std::complex<T>::operator+=,-=,*=,/=
| primary template complex<T> | ||
| (1) | ||
| complex& operator+=(const T& other); | (until C++20) | |
| constexpr complex& operator+=(const T& other); | (since C++20) | |
| (2) | ||
| complex& operator-=(const T& other); | (until C++20) | |
| constexpr complex& operator-=(const T& other); | (since C++20) | |
| (3) | ||
| complex& operator*=(const T& other); | (until C++20) | |
| constexpr complex& operator*=(const T& other); | (since C++20) | |
| (4) | ||
| complex& operator/=(const T& other); | (until C++20) | |
| constexpr complex& operator/=(const T& other); | (since C++20) | |
| specialization complex<float> | ||
| (1) | ||
| complex& operator+=(float other); | (until C++20) | |
| constexpr complex& operator+=(float other); | (since C++20) | |
| (2) | ||
| complex& operator-=(float other); | (until C++20) | |
| constexpr complex& operator-=(float other); | (since C++20) | |
| (3) | ||
| complex& operator*=(float other); | (until C++20) | |
| constexpr complex& operator*=(float other); | (since C++20) | |
| (4) | ||
| complex& operator/=(float other); | (until C++20) | |
| constexpr complex& operator/=(float other); | (since C++20) | |
| specialization complex<double> | ||
| (1) | ||
| complex& operator+=(double other); | (until C++20) | |
| constexpr complex& operator+=(double other); | (since C++20) | |
| (2) | ||
| complex& operator-=(double other); | (until C++20) | |
| constexpr complex& operator-=(double other); | (since C++20) | |
| (3) | ||
| complex& operator*=(double other); | (until C++20) | |
| constexpr complex& operator*=(double other); | (since C++20) | |
| (4) | ||
| complex& operator/=(double other); | (until C++20) | |
| constexpr complex& operator/=(double other); | (since C++20) | |
| specialization complex<long double> | ||
| (1) | ||
| complex& operator+=(long double other); | (until C++20) | |
| constexpr complex& operator+=(long double other); | (since C++20) | |
| (2) | ||
| complex& operator-=(long double other); | (until C++20) | |
| constexpr complex& operator-=(long double other); | (since C++20) | |
| (3) | ||
| complex& operator*=(long double other); | (until C++20) | |
| constexpr complex& operator*=(long double other); | (since C++20) | |
| (4) | ||
| complex& operator/=(long double other); | (until C++20) | |
| constexpr complex& operator/=(long double other); | (since C++20) | |
| all specializations | ||
| (5) | ||
| template<class X> complex& operator+=(const std::complex<X>& other); | (until C++20) | |
| template<class X> constexpr complex& operator+=(const std::complex<X>& other); | (since C++20) | |
| (6) | ||
| template<class X> complex& operator-=(const std::complex<X>& other); | (until C++20) | |
| template<class X> constexpr complex& operator-=(const std::complex<X>& other); | (since C++20) | |
| (7) | ||
| template<class X> complex& operator*=(const std::complex<X>& other); | (until C++20) | |
| template<class X> constexpr complex& operator*=(const std::complex<X>& other); | (since C++20) | |
| (8) | ||
| template<class X> complex& operator/=(const std::complex<X>& other); | (until C++20) | |
| template<class X> constexpr complex& operator/=(const std::complex<X>& other); | (since C++20) | 
Implements the compound assignment operators for complex arithmetic and for mixed complex/scalar arithmetic. Scalar arguments are treated as complex numbers with the real part equal to the argument and the imaginary part set to zero.
1,5) Adds 
 other to *this.
2,6) Subtracts 
 other from *this.
3,7) Multiplies 
 *this by other.
4,8) Divides 
 *this by other.Parameters
| other | - | a complex or scalar value of matching type ( float,double,long double) | 
Return value
*this.
See also
| applies unary operators to complex numbers (function template) | |
| performs complex number arithmetics on two complex values or a complex and a scalar (function template) | 
    © cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
    http://en.cppreference.com/w/cpp/numeric/complex/operator_arith