: Operators can be overloaded, that is, given meaning when applied to
expressions of
class type or
enumeration type
. Uses of overloaded operators are transformed into
function calls as described in
[over.oper]. Overloaded operators
obey the rules for syntax and evaluation order specified in
[expr.compound],
but the requirements of operand type and value category are replaced
by the rules for function call
. —
end note