Перегружать можно следующие операторы:
+ - * / % ^ & | ~ ! = < >
+= -= *= /= %= ^= &= |=
<< >> >>= <<= == != <= >=
&& || ++ -- ->* , -> [] ()
new new[] delete delete[]А нельзя (подсмотрел у Страуструпа):
::(разрешение области видимости).(выбор члена).*(выбор члена через указатель на член)?:тернарный операторsizeof, typeid
Также нельзя определить новые лексемы.
Уважаемый Филипп, тернарный оператор возвращает rvalue.
ОтветитьУдалить