Wiele bardziej znanych bibliotek C ++ w informatyce, takich jak Eigen , Trilinos i deal.II, używa standardowego obiektu biblioteki szablonów C ++ std::complex<>
do reprezentowania złożonych liczb zmiennoprzecinkowych.
Gniazdo Poulson za odpowiedź na pytanie o domyślnych konstruktorów, wskazuje on, że ma własną implementację std::complex
w Elemental „dla wielu powodów”. Jakie są te powody? Jakie są zalety i wady tego podejścia?
z
jest wyrażeniem lvue typu cv,std::complex<T>
toreinterpret_cast<cv T(&)[2]>(z)
ireinterpret_cast<cv T(&)[2]>(z)[0]
będzie oznaczać rzeczywistą częśćz
, ireinterpret_cast<cv T(&)[2]>(z)[1]
będzie oznaczać część urojonąz
. Adresowane są również tablice liczb zespolonych.