libstdc++
Complex Numbers
Collaboration diagram for Complex Numbers:

Classes

class  std::complex< _Tp >
 

Macros

#define __cpp_lib_complex_udls
 

Typedefs

typedef std::complex< typename __promote_2< _Tp, _Up >::__type__gnu_cxx::__promote_2< std::complex< _Tp >, _Up >::__type
 
typedef std::complex< typename __promote_2< _Tp, _Up >::__type__gnu_cxx::__promote_2< _Tp, std::complex< _Up > >::__type
 
typedef std::complex< typename __promote_2< _Tp, _Up >::__type__gnu_cxx::__promote_2< std::complex< _Tp >, std::complex< _Up > >::__type
 
typedef __complex__ float std::complex< float >::_ComplexT
 
typedef __complex__ double std::complex< double >::_ComplexT
 
typedef __complex__ long double std::complex< long double >::_ComplexT
 
typedef _Tp std::complex< _Tp >::value_type
 
typedef float std::complex< float >::value_type
 
typedef double std::complex< double >::value_type
 
typedef long double std::complex< long double >::value_type
 

Functions

constexpr std::complex< float >::complex (_ComplexT __z)
 
constexpr std::complex< double >::complex (_ComplexT __z)
 
constexpr std::complex< long double >::complex (_ComplexT __z)
 
constexpr std::complex< _Tp >::complex (const _Tp &__r=_Tp(), const _Tp &__i=_Tp())
 
constexpr std::complex< _Tp >::complex (const complex &)=default
 
template<typename _Up >
constexpr std::complex< _Tp >::complex (const complex< _Up > &__z)
 
constexpr std::complex< float >::complex (const complex< double > &)
 
constexpr std::complex< long double >::complex (const complex< double > &__z)
 
constexpr std::complex< double >::complex (const complex< float > &__z)
 
constexpr std::complex< long double >::complex (const complex< float > &__z)
 
constexpr std::complex< float >::complex (const complex< long double > &)
 
constexpr std::complex< double >::complex (const complex< long double > &)
 
constexpr std::complex< double >::complex (double __r=0.0, double __i=0.0)
 
constexpr std::complex< float >::complex (float __r=0.0f, float __i=0.0f)
 
constexpr std::complex< long double >::complex (long double __r=0.0L, long double __i=0.0L)
 
 std::complex< double >::__attribute ((__abi_tag__("cxx11"))) const expr double real() const
 
 std::complex< float >::__attribute ((__abi_tag__("cxx11"))) const expr float real() const
 
 std::complex< long double >::__attribute ((__abi_tag__("cxx11"))) const expr long double real() const
 
template<typename _Tp >
_Tp std::__complex_abs (const complex< _Tp > &__z)
 
template<typename _Tp >
std::complex< _Tp > std::__complex_acos (const std::complex< _Tp > &__z)
 
template<typename _Tp >
std::complex< _Tp > std::__complex_acosh (const std::complex< _Tp > &__z)
 
template<typename _Tp >
_Tp std::__complex_arg (const complex< _Tp > &__z)
 
template<typename _Tp >
std::complex< _Tp > std::__complex_asin (const std::complex< _Tp > &__z)
 
template<typename _Tp >
std::complex< _Tp > std::__complex_asinh (const std::complex< _Tp > &__z)
 
template<typename _Tp >
std::complex< _Tp > std::__complex_atan (const std::complex< _Tp > &__z)
 
template<typename _Tp >
std::complex< _Tp > std::__complex_atanh (const std::complex< _Tp > &__z)
 
template<typename _Tp >
complex< _Tp > std::__complex_cos (const complex< _Tp > &__z)
 
template<typename _Tp >
complex< _Tp > std::__complex_cosh (const complex< _Tp > &__z)
 
template<typename _Tp >
complex< _Tp > std::__complex_exp (const complex< _Tp > &__z)
 
template<typename _Tp >
complex< _Tp > std::__complex_log (const complex< _Tp > &__z)
 
template<typename _Tp >
complex< _Tp > std::__complex_pow (const complex< _Tp > &__x, const complex< _Tp > &__y)
 
template<typename _Tp >
complex< _Tp > std::__complex_pow_unsigned (complex< _Tp > __x, unsigned __n)
 
template<typename _Tp >
std::complex< _Tp > std::__complex_proj (const std::complex< _Tp > &__z)
 
template<typename _Tp >
complex< _Tp > std::__complex_sin (const complex< _Tp > &__z)
 
template<typename _Tp >
complex< _Tp > std::__complex_sinh (const complex< _Tp > &__z)
 
template<typename _Tp >
complex< _Tp > std::__complex_sqrt (const complex< _Tp > &__z)
 
template<typename _Tp >
complex< _Tp > std::__complex_tan (const complex< _Tp > &__z)
 
template<typename _Tp >
complex< _Tp > std::__complex_tanh (const complex< _Tp > &__z)
 
constexpr complex std::complex< _Tp >::__rep () const
 
constexpr _ComplexT std::complex< float >::__rep () const
 
constexpr _ComplexT std::complex< double >::__rep () const
 
constexpr _ComplexT std::complex< long double >::__rep () const
 
template<typename _Tp >
static constexpr _Tp std::_Norm_helper< bool >::_S_do_it (const complex< _Tp > &__z)
 
template<typename _Tp >
static constexpr _Tp std::_Norm_helper< true >::_S_do_it (const complex< _Tp > &__z)
 
template<typename _Tp >
_Tp std::abs (const complex< _Tp > &)
 
template<typename _Tp >
std::complex< _Tp > std::acos (const std::complex< _Tp > &__z)
 
template<typename _Tp >
std::complex< _Tp > std::acosh (const std::complex< _Tp > &__z)
 
template<typename _Tp >
__gnu_cxx::__promote< _Tp >::__type std::arg (_Tp __x)
 
template<typename _Tp >
_Tp std::arg (const complex< _Tp > &)
 
template<typename _Tp >
std::complex< _Tp > std::asin (const std::complex< _Tp > &__z)
 
template<typename _Tp >
std::complex< _Tp > std::asinh (const std::complex< _Tp > &__z)
 
template<typename _Tp >
std::complex< _Tp > std::atan (const std::complex< _Tp > &__z)
 
template<typename _Tp >
std::complex< _Tp > std::atanh (const std::complex< _Tp > &__z)
 
template<typename _Tp >
constexpr std::complex< typename __gnu_cxx::__promote< _Tp >::__type > std::conj (_Tp __x)
 
template<typename _Tp >
std::complex< typename __gnu_cxx::__promote< _Tp >::__type > std::tr1::conj (_Tp __x)
 
template<typename _Tp >
constexpr complex< _Tp > std::conj (const complex< _Tp > &)
 
template<typename _Tp >
std::complex< _Tp > std::tr1::conj (const std::complex< _Tp > &__z)
 
template<typename _Tp >
complex< _Tp > std::cos (const complex< _Tp > &)
 
template<typename _Tp >
complex< _Tp > std::cosh (const complex< _Tp > &)
 
template<typename _Tp >
complex< _Tp > std::exp (const complex< _Tp > &)
 
template<typename _Tp >
_Tp std::fabs (const std::complex< _Tp > &__z)
 
template<typename _Tp >
std::complex< _Tp > std::tr1::fabs (const std::complex< _Tp > &__z)
 
constexpr _GLIBCXX_ABI_TAG_CXX11 _Tp std::complex< _Tp >::imag () const
 
constexpr void std::complex< _Tp >::imag (_Tp __val)
 
template<typename _Tp >
constexpr __gnu_cxx::__promote< _Tp >::__type std::imag (_Tp)
 
template<typename _Tp >
constexpr _Tp std::imag (const complex< _Tp > &__z)
 
constexpr void std::complex< double >::imag (double __val)
 
constexpr void std::complex< float >::imag (float __val)
 
constexpr void std::complex< long double >::imag (long double __val)
 
template<typename _Tp >
complex< _Tp > std::log (const complex< _Tp > &)
 
template<typename _Tp >
complex< _Tp > std::log10 (const complex< _Tp > &)
 
template<typename _Tp >
constexpr __gnu_cxx::__promote< _Tp >::__type std::norm (_Tp __x)
 
template<typename _Tp >
constexpr _Tp std::norm (const complex< _Tp > &)
 
template<typename _Tp >
constexpr bool std::operator!= (const _Tp &__x, const complex< _Tp > &__y)
 
template<typename _Tp >
constexpr bool std::operator!= (const complex< _Tp > &__x, const _Tp &__y)
 
template<typename _Tp >
constexpr bool std::operator!= (const complex< _Tp > &__x, const complex< _Tp > &__y)
 
constexpr std::complex< double > std::literals::operator""i (long double __num)
 
constexpr std::complex< double > std::literals::operator""i (unsigned long long __num)
 
constexpr std::complex< float > std::literals::operator""if (long double __num)
 
constexpr std::complex< float > std::literals::operator""if (unsigned long long __num)
 
constexpr std::complex< long double > std::literals::operator""il (long double __num)
 
constexpr std::complex< long double > std::literals::operator""il (unsigned long long __num)
 
template<typename _Tp >
constexpr complex< _Tp > std::operator* (const _Tp &__x, const complex< _Tp > &__y)
 
template<typename _Tp >
constexpr complex< _Tp > std::operator* (const complex< _Tp > &__x, const _Tp &__y)
 
template<typename _Tp >
constexpr complex< _Tp > std::operator* (const complex< _Tp > &__x, const complex< _Tp > &__y)
 
constexpr complex< _Tp > & std::complex< _Tp >::operator*= (const _Tp &)
 
template<class _Tp >
constexpr complexstd::complex< float >::operator*= (const complex< _Tp > &__z)
 
template<typename _Tp >
constexpr complexstd::complex< double >::operator*= (const complex< _Tp > &__z)
 
template<typename _Tp >
constexpr complexstd::complex< long double >::operator*= (const complex< _Tp > &__z)
 
template<typename _Up >
constexpr complex< _Tp > & std::complex< _Tp >::operator*= (const complex< _Up > &)
 
constexpr complexstd::complex< double >::operator*= (double __d)
 
constexpr complexstd::complex< float >::operator*= (float __f)
 
constexpr complexstd::complex< long double >::operator*= (long double __r)
 
template<typename _Tp >
constexpr complex< _Tp > std::operator+ (const _Tp &__x, const complex< _Tp > &__y)
 
template<typename _Tp >
constexpr complex< _Tp > std::operator+ (const complex< _Tp > &__x)
 
template<typename _Tp >
constexpr complex< _Tp > std::operator+ (const complex< _Tp > &__x, const _Tp &__y)
 
template<typename _Tp >
constexpr complex< _Tp > std::operator+ (const complex< _Tp > &__x, const complex< _Tp > &__y)
 
constexpr complex< _Tp > & std::complex< _Tp >::operator+= (const _Tp &__t)
 
template<typename _Tp >
constexpr complexstd::complex< float >::operator+= (const complex< _Tp > &__z)
 
template<typename _Tp >
constexpr complexstd::complex< double >::operator+= (const complex< _Tp > &__z)
 
template<typename _Tp >
constexpr complexstd::complex< long double >::operator+= (const complex< _Tp > &__z)
 
template<typename _Up >
constexpr complex< _Tp > & std::complex< _Tp >::operator+= (const complex< _Up > &)
 
constexpr complexstd::complex< double >::operator+= (double __d)
 
constexpr complexstd::complex< float >::operator+= (float __f)
 
constexpr complexstd::complex< long double >::operator+= (long double __r)
 
template<typename _Tp >
constexpr complex< _Tp > std::operator- (const _Tp &__x, const complex< _Tp > &__y)
 
template<typename _Tp >
constexpr complex< _Tp > std::operator- (const complex< _Tp > &__x)
 
template<typename _Tp >
constexpr complex< _Tp > std::operator- (const complex< _Tp > &__x, const _Tp &__y)
 
template<typename _Tp >
constexpr complex< _Tp > std::operator- (const complex< _Tp > &__x, const complex< _Tp > &__y)
 
constexpr complex< _Tp > & std::complex< _Tp >::operator-= (const _Tp &__t)
 
template<class _Tp >
constexpr complexstd::complex< float >::operator-= (const complex< _Tp > &__z)
 
template<typename _Tp >
constexpr complexstd::complex< double >::operator-= (const complex< _Tp > &__z)
 
template<typename _Tp >
constexpr complexstd::complex< long double >::operator-= (const complex< _Tp > &__z)
 
template<typename _Up >
constexpr complex< _Tp > & std::complex< _Tp >::operator-= (const complex< _Up > &)
 
constexpr complexstd::complex< double >::operator-= (double __d)
 
constexpr complexstd::complex< float >::operator-= (float __f)
 
constexpr complexstd::complex< long double >::operator-= (long double __r)
 
template<typename _Tp >
constexpr complex< _Tp > std::operator/ (const _Tp &__x, const complex< _Tp > &__y)
 
template<typename _Tp >
constexpr complex< _Tp > std::operator/ (const complex< _Tp > &__x, const _Tp &__y)
 
template<typename _Tp >
constexpr complex< _Tp > std::operator/ (const complex< _Tp > &__x, const complex< _Tp > &__y)
 
constexpr complex< _Tp > & std::complex< _Tp >::operator/= (const _Tp &)
 
template<class _Tp >
constexpr complexstd::complex< float >::operator/= (const complex< _Tp > &__z)
 
template<typename _Tp >
constexpr complexstd::complex< double >::operator/= (const complex< _Tp > &__z)
 
template<typename _Tp >
constexpr complexstd::complex< long double >::operator/= (const complex< _Tp > &__z)
 
template<typename _Up >
constexpr complex< _Tp > & std::complex< _Tp >::operator/= (const complex< _Up > &)
 
constexpr complexstd::complex< double >::operator/= (double __d)
 
constexpr complexstd::complex< float >::operator/= (float __f)
 
constexpr complexstd::complex< long double >::operator/= (long double __r)
 
template<typename _Tp , typename _CharT , class _Traits >
basic_ostream< _CharT, _Traits > & std::operator<< (basic_ostream< _CharT, _Traits > &__os, const complex< _Tp > &__x)
 
constexpr complex< _Tp > & std::complex< _Tp >::operator= (const _Tp &)
 
constexpr complexstd::complex< _Tp >::operator= (const complex &)=default
 
constexpr complexstd::complex< float >::operator= (const complex &)=default
 
constexpr complexstd::complex< double >::operator= (const complex &)=default
 
constexpr complexstd::complex< long double >::operator= (const complex &)=default
 
template<typename _Tp >
constexpr complexstd::complex< float >::operator= (const complex< _Tp > &__z)
 
template<typename _Tp >
constexpr complexstd::complex< double >::operator= (const complex< _Tp > &__z)
 
template<typename _Tp >
constexpr complexstd::complex< long double >::operator= (const complex< _Tp > &__z)
 
template<typename _Up >
constexpr complex< _Tp > & std::complex< _Tp >::operator= (const complex< _Up > &)
 
constexpr complexstd::complex< double >::operator= (double __d)
 
constexpr complexstd::complex< float >::operator= (float __f)
 
constexpr complexstd::complex< long double >::operator= (long double __r)
 
template<typename _Tp >
constexpr bool std::operator== (const _Tp &__x, const complex< _Tp > &__y)
 
template<typename _Tp >
constexpr bool std::operator== (const complex< _Tp > &__x, const _Tp &__y)
 
template<typename _Tp >
constexpr bool std::operator== (const complex< _Tp > &__x, const complex< _Tp > &__y)
 
template<typename _Tp , typename _CharT , class _Traits >
basic_istream< _CharT, _Traits > & std::operator>> (basic_istream< _CharT, _Traits > &__is, complex< _Tp > &__x)
 
template<typename _Tp >
complex< _Tp > std::polar (const _Tp &, const _Tp &=0)
 
template<typename _Tp , typename _Up >
std::complex< typename __gnu_cxx::__promote_2< _Tp, _Up >::__type > std::tr1::polar (const _Tp &__rho, const _Up &__theta)
 
template<typename _Tp >
complex< _Tp > std::pow (const _Tp &, const complex< _Tp > &)
 
template<typename _Tp >
std::complex< _Tp > std::tr1::pow (const _Tp &__x, const std::complex< _Tp > &__y)
 
template<typename _Tp , typename _Up >
std::complex< typename __gnu_cxx::__promote_2< _Tp, _Up >::__type > std::pow (const _Tp &__x, const std::complex< _Up > &__y)
 
template<typename _Tp , typename _Up >
std::complex< typename __gnu_cxx::__promote_2< _Tp, _Up >::__type > std::tr1::pow (const _Tp &__x, const std::complex< _Up > &__y)
 
template<typename _Tp >
complex< _Tp > std::pow (const complex< _Tp > &, const _Tp &)
 
template<typename _Tp >
complex< _Tp > std::pow (const complex< _Tp > &, const complex< _Tp > &)
 
template<typename _Tp >
complex< _Tp > std::pow (const complex< _Tp > &, int)
 
template<typename _Tp >
std::complex< _Tp > std::tr1::pow (const std::complex< _Tp > &__x, const _Tp &__y)
 
template<typename _Tp , typename _Up >
std::complex< typename __gnu_cxx::__promote_2< _Tp, _Up >::__type > std::pow (const std::complex< _Tp > &__x, const _Up &__y)
 
template<typename _Tp , typename _Up >
std::complex< typename __gnu_cxx::__promote_2< _Tp, _Up >::__type > std::tr1::pow (const std::complex< _Tp > &__x, const _Up &__y)
 
template<typename _Tp >
std::complex< _Tp > std::tr1::pow (const std::complex< _Tp > &__x, const std::complex< _Tp > &__y)
 
template<typename _Tp , typename _Up >
std::complex< typename __gnu_cxx::__promote_2< _Tp, _Up >::__type > std::pow (const std::complex< _Tp > &__x, const std::complex< _Up > &__y)
 
template<typename _Tp , typename _Up >
std::complex< typename __gnu_cxx::__promote_2< _Tp, _Up >::__type > std::tr1::pow (const std::complex< _Tp > &__x, const std::complex< _Up > &__y)
 
template<typename _Tp >
std::complex< typename __gnu_cxx::__promote< _Tp >::__type > std::proj (_Tp __x)
 
template<typename _Tp >
std::complex< _Tp > std::proj (const std::complex< _Tp > &)
 
constexpr _GLIBCXX_ABI_TAG_CXX11 _Tp std::complex< _Tp >::real () const
 
constexpr void std::complex< _Tp >::real (_Tp __val)
 
template<typename _Tp >
constexpr __gnu_cxx::__promote< _Tp >::__type std::real (_Tp __x)
 
template<typename _Tp >
constexpr _Tp std::real (const complex< _Tp > &__z)
 
constexpr void std::complex< double >::real (double __val)
 
constexpr void std::complex< float >::real (float __val)
 
constexpr void std::complex< long double >::real (long double __val)
 
template<typename _Tp >
complex< _Tp > std::sin (const complex< _Tp > &)
 
template<typename _Tp >
complex< _Tp > std::sinh (const complex< _Tp > &)
 
template<typename _Tp >
complex< _Tp > std::sqrt (const complex< _Tp > &)
 
template<typename _Tp >
complex< _Tp > std::tan (const complex< _Tp > &)
 
template<typename _Tp >
complex< _Tp > std::tanh (const complex< _Tp > &)
 

Detailed Description

Classes and functions for complex numbers.

Typedef Documentation

◆ value_type

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

Value typedef.

Definition at line 131 of file complex.

Function Documentation

◆ complex() [1/2]

template<typename _Tp >
constexpr 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.

◆ complex() [2/2]

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

Converting constructor.

Definition at line 145 of file complex.

◆ abs()

template<typename _Tp >
_Tp std::abs ( const complex< _Tp > &  __z)
inline

Return magnitude of z.

Definition at line 630 of file complex.

Referenced by std::binomial_distribution< _IntType >::operator()(), and std::poisson_distribution< _IntType >::operator()().

◆ acos()

template<typename _Tp >
std::complex< _Tp > std::acos ( const std::complex< _Tp > &  __z)
inline

acos(__z) [8.1.2].

Definition at line 1638 of file complex.

◆ acosh()

template<typename _Tp >
std::complex< _Tp > std::acosh ( const std::complex< _Tp > &  __z)
inline

acosh(__z) [8.1.5].

Definition at line 1754 of file complex.

◆ arg() [1/2]

template<typename _Tp >
__gnu_cxx::__promote<_Tp>::__type std::arg ( _Tp  __x)
inline

Additional overloads [8.1.9].

Definition at line 1852 of file complex.

◆ arg() [2/2]

template<typename _Tp >
_Tp std::arg ( const complex< _Tp > &  __z)
inline

Return phase angle of z.

Definition at line 657 of file complex.

◆ asin()

template<typename _Tp >
std::complex< _Tp > std::asin ( const std::complex< _Tp > &  __z)
inline

asin(__z) [8.1.3].

Definition at line 1674 of file complex.

◆ asinh()

template<typename _Tp >
std::complex< _Tp > std::asinh ( const std::complex< _Tp > &  __z)
inline

asinh(__z) [8.1.6].

Definition at line 1793 of file complex.

◆ atan()

template<typename _Tp >
std::complex< _Tp > std::atan ( const std::complex< _Tp > &  __z)
inline

atan(__z) [8.1.4].

Definition at line 1718 of file complex.

◆ atanh()

template<typename _Tp >
std::complex< _Tp > std::atanh ( const std::complex< _Tp > &  __z)
inline

atanh(__z) [8.1.7].

Definition at line 1837 of file complex.

◆ conj()

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

Return complex conjugate of z.

Definition at line 709 of file complex.

◆ cos()

template<typename _Tp >
complex< _Tp > std::cos ( const complex< _Tp > &  __z)
inline

Return complex cosine of z.

Definition at line 741 of file complex.

◆ cosh()

template<typename _Tp >
complex< _Tp > std::cosh ( const complex< _Tp > &  __z)
inline

Return complex hyperbolic cosine of z.

Definition at line 771 of file complex.

◆ exp()

template<typename _Tp >
complex< _Tp > std::exp ( const complex< _Tp > &  __z)
inline

Return complex base e exponential of z.

Definition at line 797 of file complex.

◆ fabs() [1/2]

template<typename _Tp >
_Tp std::fabs ( const std::complex< _Tp > &  __z)
inline

fabs(__z) [8.1.8].

Definition at line 1846 of file complex.

◆ fabs() [2/2]

template<typename _Tp >
std::complex< _Tp > std::tr1::fabs ( const std::complex< _Tp > &  __z)
inline

fabs(__z) [8.1.8].

Definition at line 309 of file tr1/complex.

◆ log()

template<typename _Tp >
complex< _Tp > std::log ( const complex< _Tp > &  __z)
inline

◆ log10()

template<typename _Tp >
complex< _Tp > std::log10 ( const complex< _Tp > &  __z)
inline

Return complex base 10 logarithm of z.

Definition at line 829 of file complex.

◆ norm()

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

Return z magnitude squared.

Definition at line 693 of file complex.

◆ operator!=()

template<typename _Tp >
constexpr bool std::operator!= ( const complex< _Tp > &  __x,
const complex< _Tp > &  __y 
)
inlineconstexpr

Return false if x is equal to y.

Definition at line 483 of file complex.

◆ operator*()

template<typename _Tp >
constexpr complex<_Tp> std::operator* ( const complex< _Tp > &  __x,
const complex< _Tp > &  __y 
)
inlineconstexpr

Return new complex value x times y.

Definition at line 392 of file complex.

◆ operator*=() [1/2]

template<typename _Tp >
constexpr complex< _Tp > & std::complex< _Tp >::operator*= ( const _Tp &  __t)
constexpr

Multiply this complex number by a scalar.

Definition at line 251 of file complex.

◆ operator*=() [2/2]

template<typename _Tp >
template<typename _Up >
constexpr complex< _Tp > & std::complex< _Tp >::operator*= ( const complex< _Up > &  __z)
constexpr

Multiply this complex number by another.

Definition at line 305 of file complex.

◆ operator+() [1/2]

template<typename _Tp >
constexpr complex<_Tp> std::operator+ ( const complex< _Tp > &  __x)
inlineconstexpr

Return x.

Definition at line 451 of file complex.

◆ operator+() [2/2]

template<typename _Tp >
constexpr complex<_Tp> std::operator+ ( const complex< _Tp > &  __x,
const complex< _Tp > &  __y 
)
inlineconstexpr

Return new complex value x plus y.

Definition at line 332 of file complex.

◆ operator+=() [1/2]

template<typename _Tp >
constexpr 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+=() [2/2]

template<typename _Tp >
template<typename _Up >
constexpr complex< _Tp > & std::complex< _Tp >::operator+= ( const complex< _Up > &  __z)
constexpr

Add another complex number to this one.

Definition at line 282 of file complex.

◆ operator-() [1/2]

template<typename _Tp >
constexpr complex<_Tp> std::operator- ( const complex< _Tp > &  __x)
inlineconstexpr

Return complex negation of x.

Definition at line 457 of file complex.

◆ operator-() [2/2]

template<typename _Tp >
constexpr complex<_Tp> std::operator- ( const complex< _Tp > &  __x,
const complex< _Tp > &  __y 
)
inlineconstexpr

Return new complex value x minus y.

Definition at line 362 of file complex.

◆ operator-=() [1/2]

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

Subtract a scalar from this complex number.

Definition at line 199 of file complex.

◆ operator-=() [2/2]

template<typename _Tp >
template<typename _Up >
constexpr complex< _Tp > & std::complex< _Tp >::operator-= ( const complex< _Up > &  __z)
constexpr

Subtract another complex number from this one.

Definition at line 293 of file complex.

◆ operator/()

template<typename _Tp >
constexpr complex<_Tp> std::operator/ ( const complex< _Tp > &  __x,
const complex< _Tp > &  __y 
)
inlineconstexpr

Return new complex value x divided by y.

Definition at line 422 of file complex.

◆ operator/=() [1/2]

template<typename _Tp >
constexpr complex< _Tp > & std::complex< _Tp >::operator/= ( const _Tp &  __t)
constexpr

Divide this complex number by a scalar.

Definition at line 261 of file complex.

◆ operator/=() [2/2]

template<typename _Tp >
template<typename _Up >
constexpr complex< _Tp > & std::complex< _Tp >::operator/= ( const complex< _Up > &  __z)
constexpr

Divide this complex number by another.

Definition at line 318 of file complex.

◆ operator<<()

template<typename _Tp , typename _CharT , class _Traits >
basic_ostream<_CharT, _Traits>& std::operator<< ( basic_ostream< _CharT, _Traits > &  __os,
const complex< _Tp > &  __x 
)

Insertion operator for complex values.

Definition at line 501 of file complex.

◆ operator=() [1/2]

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

Assign a scalar to this complex number.

Definition at line 241 of file complex.

◆ operator=() [2/2]

template<typename _Tp >
template<typename _Up >
constexpr complex< _Tp > & std::complex< _Tp >::operator= ( const complex< _Up > &  __z)
constexpr

Assign another complex number to this one.

Definition at line 271 of file complex.

◆ operator==()

template<typename _Tp >
constexpr bool std::operator== ( const complex< _Tp > &  __x,
const complex< _Tp > &  __y 
)
inlineconstexpr

Return true if x is equal to y.

Definition at line 464 of file complex.

◆ operator>>()

template<typename _Tp , typename _CharT , class _Traits >
basic_istream<_CharT, _Traits>& std::operator>> ( basic_istream< _CharT, _Traits > &  __is,
complex< _Tp > &  __x 
)

Extraction operator for complex values.

Definition at line 501 of file complex.

◆ polar()

template<typename _Tp >
complex< _Tp > std::polar ( const _Tp &  __rho,
const _Tp &  __theta = 0 
)
inline

Return complex with magnitude rho and angle theta.

Definition at line 701 of file complex.

◆ pow() [1/5]

template<typename _Tp >
complex< _Tp > std::pow ( const _Tp &  __x,
const complex< _Tp > &  __y 
)
inline

Return x to the y'th power.

Definition at line 1073 of file complex.

◆ pow() [2/5]

template<typename _Tp >
complex< _Tp > std::pow ( const complex< _Tp > &  __x,
const _Tp &  __y 
)

Return x to the y'th power.

Definition at line 1028 of file complex.

◆ pow() [3/5]

template<typename _Tp >
complex< _Tp > std::pow ( const complex< _Tp > &  __x,
const complex< _Tp > &  __y 
)
inline

Return x to the y'th power.

Definition at line 1067 of file complex.

◆ pow() [4/5]

template<typename _Tp >
complex< _Tp > std::pow ( const complex< _Tp > &  __z,
int  __n 
)
inline

Return x to the y'th power.

Definition at line 1019 of file complex.

Referenced by std::gamma_distribution< _RealType >::operator()().

◆ pow() [5/5]

template<typename _Tp , typename _Up >
std::complex<typename __gnu_cxx::__promote_2<_Tp, _Up>::__type> std::tr1::pow ( const std::complex< _Tp > &  __x,
const _Up &  __y 
)
inline

Additional overloads [8.1.9].

Definition at line 350 of file tr1/complex.

◆ sin()

template<typename _Tp >
complex< _Tp > std::sin ( const complex< _Tp > &  __z)
inline

Return complex sine of z.

Definition at line 859 of file complex.

◆ sinh()

template<typename _Tp >
complex< _Tp > std::sinh ( const complex< _Tp > &  __z)
inline

Return complex hyperbolic sine of z.

Definition at line 889 of file complex.

◆ sqrt()

template<typename _Tp >
complex< _Tp > std::sqrt ( const complex< _Tp > &  __z)
inline

Return complex square root of z.

Definition at line 933 of file complex.

Referenced by std::student_t_distribution< _RealType >::operator()(), and std::normal_distribution< _RealType >::operator()().

◆ tan()

template<typename _Tp >
complex< _Tp > std::tan ( const complex< _Tp > &  __z)
inline

Return complex tangent of z.

Definition at line 960 of file complex.

◆ tanh()

template<typename _Tp >
complex< _Tp > std::tanh ( const complex< _Tp > &  __z)
inline

Return complex hyperbolic tangent of z.

Definition at line 988 of file complex.