Viele der in der Computerwissenschaft bekannteren C ++ - Bibliotheken wie Eigen , Trilinos und deal.II verwenden das Standardobjekt der C ++ - Headerbibliothek , std::complex<>
um komplexe Gleitkommazahlen darzustellen.
In Jack Poulsons Antwort auf eine Frage zu Standardkonstruktoren weist er darauf hin, dass er "aus mehreren Gründen" eine eigene Implementierung von std::complex
in Elemental hat . Was sind diese Gründe? Was sind die Vor- und Nachteile dieses Ansatzes?
z
ein Wertausdruck vom Typ cvstd::complex<T>
istreinterpret_cast<cv T(&)[2]>(z)
undreinterpret_cast<cv T(&)[2]>(z)[0]
den Realteil vonz
undreinterpret_cast<cv T(&)[2]>(z)[1]
den Imaginärteil von bezeichnen sollz
. Auch Arrays komplexer Zahlen werden angesprochen.