complex<float>
Beschreibt ein Objekt, das ein Paar geordnetes beide Objekte des Typs float speichert , das erste, den reellen eine komplexe Zahl vertretend und das zweite, den imaginären Teil vertretend.
template<>
class complex<float> {
public:
complex(
float _RealVal = 0,
float _ImagVal = 0
);
complex(
const complex<float>& _ComplexNum
);
complex(
const complex<double>& _ComplexNum
);
complex(
const complex<long double>& _ComplexNum
);
// rest same as template class complex
};
Parameter
_RealVal
Der Wert des float-Typs für den reellen der komplexen Zahl, die erstellt wird._ImagVal
Der Wert des float-Typs für den imaginären Teil der komplexen Zahl, die erstellt wird._ComplexNum
Die komplexe Zahl vom Typ double oder vom Typ long double, dessen tatsächlich und imaginäre Teile verwendet werden, um eine komplexe Zahl Typ float initialisieren, das erstellt wird.
Rückgabewert
Eine komplexe Zahl Typ float.
Hinweise
Die explizite Spezialisierung des Vorlagenklassenkomplexes zu einer komplexen Klasse Typ float Abweichung zur Vorlagenklasse nur in den Konstruktoren, die sie definiert. Der Konvertierung von float in double ist zulässig, um implizit sein, sondern wird weniger sichere Konvertierung von float an long double benötigt, explicit sind. Die Verwendung von explicit werden Konturen die Initiierung mit Typkonvertierung mit der Zuweisungssyntax durch.
Weitere Informationen zur Vorlagenklasse complex, finden Sie unter complex-Klasse. Eine Liste der Member der Vorlagenklasse complex, finden Sie unter komplexe Member.
Beispiel
// complex_comp_flt.cpp
// compile with: /EHsc
#include <complex>
#include <iostream>
int main( )
{
using namespace std;
double pi = 3.14159265359;
// The first constructor specifies real & imaginary parts
complex <float> c1 ( 4.0 , 5.0 );
cout << "Specifying initial real & imaginary parts,\n"
<< " as type float gives c1 = " << c1 << endl;
// The second constructor initializes values of the real &
// imaginary parts using those of complex number of type double
complex <double> c2double ( 1.0 , 3.0 );
complex <float> c2float ( c2double );
cout << "Implicit conversion from type double to type float,"
<< "\n gives c2float = " << c2float << endl;
// The third constructor initializes values of the real &
// imaginary parts using those of a complex number
// of type long double
complex <long double> c3longdouble ( 3.0 , 4.0 );
complex <float> c3float ( c3longdouble );
cout << "Explicit conversion from type long double to type float,"
<< "\n gives c3float = " << c3float << endl;
// The modulus and argument of a complex number can be recovered
double absc3 = abs ( c3float);
double argc3 = arg ( c3float);
cout << "The modulus of c3 is recovered from c3 using: abs ( c3 ) = "
<< absc3 << endl;
cout << "Argument of c3 is recovered from c3 using:\n arg ( c3 ) = "
<< argc3 << " radians, which is " << argc3 * 180 / pi
<< " degrees." << endl;
}
Anforderungen
Header: <komplex>
Namespace: std
Siehe auch
Referenz
Threadsicherheit in der C++-Standardbibliothek