libstdc++
std::complex< _Tp > Class Template Reference

#include <complex>

Public Types

typedef _Tp value_type

Public Member Functions

constexpr complex (const _Tp &__r=_Tp(), const _Tp &__i=_Tp())
constexpr complex (const complex &)=default
template<typename _Up>
constexpr complex (const complex< _Up > &__z)
 __attribute ((__abi_tag__("cxx11"))) const expr _Tp imag() const
 __attribute ((__abi_tag__("cxx11"))) const expr _Tp real() const
constexpr complex __rep () const
constexpr void imag (_Tp __val)
constexpr complex< _Tp > & operator*= (const _Tp &)
template<typename _Up>
constexpr complex< _Tp > & operator*= (const complex< _Up > &)
constexpr complex< _Tp > & operator+= (const _Tp &__t)
template<typename _Up>
constexpr complex< _Tp > & operator+= (const complex< _Up > &)
constexpr complex< _Tp > & operator-= (const _Tp &__t)
template<typename _Up>
constexpr complex< _Tp > & operator-= (const complex< _Up > &)
constexpr complex< _Tp > & operator/= (const _Tp &)
template<typename _Up>
constexpr complex< _Tp > & operator/= (const complex< _Up > &)
constexpr complex< _Tp > & operator= (const _Tp &)
constexpr complexoperator= (const complex &)=default
template<typename _Up>
constexpr complex< _Tp > & operator= (const complex< _Up > &)
constexpr void real (_Tp __val)

Detailed Description

template<typename _Tp>
class std::complex< _Tp >

Template to represent complex numbers.

Specializations for float, double, and long double are part of the library. Results with any other type are not guaranteed.

Parameters
TpType of real and imaginary values.

Definition at line 127 of file complex.

Member Typedef Documentation

◆ value_type

template<typename _Tp>
typedef _Tp std::complex< _Tp >::value_type

Value typedef.

Definition at line 131 of file complex.

Constructor & Destructor Documentation

◆ complex() [1/2]

template<typename _Tp>
std::complex< _Tp >::complex ( const _Tp & __r = _Tp(),
const _Tp & __i = _Tp() )
inlineconstexpr

Default constructor. First parameter is x, second parameter is y. Unspecified parameters default to 0.

Definition at line 135 of file complex.

Referenced by complex(), operator*=(), operator+=(), operator-=(), operator/=(), and operator=().

◆ complex() [2/2]

template<typename _Tp>
template<typename _Up>
std::complex< _Tp >::complex ( const complex< _Up > & __z)
inlineconstexpr

Converting constructor.

Definition at line 145 of file complex.

References complex().

Member Function Documentation

◆ __attribute() [1/2]

template<typename _Tp>
std::complex< _Tp >::__attribute ( (__abi_tag__("cxx11")) ) const
inline

Definition at line 155 of file complex.

◆ __attribute() [2/2]

template<typename _Tp>
std::complex< _Tp >::__attribute ( (__abi_tag__("cxx11")) ) const
inline

Definition at line 151 of file complex.

◆ __rep()

template<typename _Tp>
complex std::complex< _Tp >::__rep ( ) const
inlineconstexpr

Definition at line 231 of file complex.

◆ imag()

template<typename _Tp>
void std::complex< _Tp >::imag ( _Tp __val)
inlineconstexpr

Definition at line 182 of file complex.

◆ operator+=()

template<typename _Tp>
complex< _Tp > & std::complex< _Tp >::operator+= ( const _Tp & __t)
inlineconstexpr

Add a scalar to this complex number.

Definition at line 190 of file complex.

◆ operator-=()

template<typename _Tp>
complex< _Tp > & std::complex< _Tp >::operator-= ( const _Tp & __t)
inlineconstexpr

Subtract a scalar from this complex number.

Definition at line 199 of file complex.

◆ real()

template<typename _Tp>
void std::complex< _Tp >::real ( _Tp __val)
inlineconstexpr

Definition at line 179 of file complex.


The documentation for this class was generated from the following file: