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::complexw Elemental „dla wielu powodów”. Jakie są te powody? Jakie są zalety i wady tego podejścia?
zjest 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.