std::complex<T>::operator+=,-=,*=,/=
From cppreference.com
                    
                                        
                    
                    
                                                            
                    |   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)  |