Source: https://web.cs.wpi.edu/~rek/Systems/C14/Operator_Overloading.pdf