std::complex::operator+=,-=,*=,/=
From cppreference.com
                    
                                        
                    
                    
                                                            
                    |   complex<T>& operator+=( const T& other );  | 
(1) | |
|   complex<T>& operator+=( const complex<T>& other );  | 
(2) | |
|   complex<T>& operator-=( const T& other );  | 
(1) | |
|   complex<T>& operator-=( const complex<T>& other );  | 
(2) | |
|   complex<T>& operator*=( const T& other );  | 
(1) | |
|   complex<T>& operator*=( const complex<T>& other );  | 
(2) | |
|   complex<T>& operator/=( const T& other );  | 
(1) | |
|   complex<T>& operator/=( const complex<T>& other );  | 
(2) | |
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-2) Adds 
other to *this.3-4) Subtracts 
other from *this.5-6) Multiplies *this by 
other.7-8) Divides *this by 
other.[edit] Parameters
| other | - | a complex or scalar value of matching type (float, double, long double) | 
[edit] Return value
*this
[edit] 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)  | |