16 Overloading [over]

16.5 Overloaded operators [over.oper]

16.5.1 Unary operators [over.unary]

Префиксный унарный оператор должен быть реализован нестатической функцией-членом ([class.mfct]) без параметров или функцией, не являющейся членом, с одним параметром. Таким образом, для любого одноместной операции префикса @, @x может быть интерпретирована как либо x.operator@() или operator@(x). Если были объявлены обе формы операторной функции, правила [over.match.oper] определяют, какая интерпретация используется, если таковая имеется. См. [over.inc] Объяснение постфиксных унарных операторов ++ и --.

Считается, что унарная и двоичная формы одного и того же оператора имеют одно и то же имя. [ Note: Следовательно, унарный оператор может скрыть бинарный оператор из охватывающей области, и наоборот. ]end note