std::complex<T>::imag
From cppreference.com
primary template std::complex<T> | ||
(1) | ||
T imag()const; | (until C++14) | |
constexpr T imag()const; | (since C++14) | |
(2) | ||
void imag( T value ); | (until C++20) | |
constexprvoid imag( T value ); | (since C++20) | |
specialization std::complex<float> | ||
(1) | ||
float imag()const; | (until C++11) | |
constexprfloat imag()const; | (since C++11) | |
(2) | ||
void imag(float value ); | (until C++20) | |
constexprvoid imag(float value ); | (since C++20) | |
specialization std::complex<double> | ||
(1) | ||
double imag()const; | (until C++11) | |
constexprdouble imag()const; | (since C++11) | |
(2) | ||
void imag(double value ); | (until C++20) | |
constexprvoid imag(double value ); | (since C++20) | |
specialization std::complex<longdouble> | ||
(1) | ||
longdouble imag()const; | (until C++11) | |
constexprlongdouble imag()const; | (since C++11) | |
(2) | ||
void imag(longdouble value ); | (until C++20) | |
constexprvoid imag(longdouble value ); | (since C++20) | |
Accesses the imaginary part of the complex number.
1) Returns the imaginary part.
2) Sets the imaginary part to value.
Contents |
[edit]Parameters
value | - | the value to set the imaginary part to |
[edit]Return value
1) The imaginary part of *this.
2) (none)
[edit]Notes
In C++11, overload (1) in std::complex specializations used to be specified without const qualifier. However, in C++11, a constexpr specifier used in a non-static member function implies const, and thus the behavior is as if const is specified.
[edit]Defect reports
The following behavior-changing defect reports were applied retroactively to previously published C++ standards.
DR | Applied to | Behavior as published | Correct behavior |
---|---|---|---|
LWG 387 | C++98 | the imaginary part could not be set directly | can be set directly via a new imag overload |
[edit]See also
returns the imaginary part (function template) | |
accesses the real part of the complex number (public member function) |