Operators
In C++, operators can potentially have overloaded meanings.
Requirement: the definition must not require arguments that match any existing definition.
Can be achieved if one or both arguments are a new data type, since no existing definition can be using these types.