Если вы хотите перегрузить префиксный оператор (++x
), это можно сделать так:
- Нестатическая функция-член без параметров,
operator++()
;или - Не являющаяся членом функция с одним параметром,
operator++(const unaryOperators &)
.
Если вы объявляете ее как функцию-член с параметром, она интерпретируется как объявление оператора postfix(x++
);однако постфиксный оператор должен быть объявлен с фиктивным аргументом типа int
, а не с вашим типом, следовательно, с ошибкой.
Итак, либо удалите аргумент функции, и оператор будет действовать на this
;или переместите функцию за пределы класса;или сделайте его friend
, если ему нужен доступ к частным лицам типа.