Introduction
Almost all operators in C++ can be overloaded with new meanings.
Operators may not look like functions but can hide function invocations.
You cannot overload the meaning of operators if all arguments are primitive data types, nor can you change the precedence or associativity of operators.