Этот синтаксис:
tclass operator++()
для префикса ++
(который обычно записывается как tclass &operator++()
). Чтобы различить приращение постфикса, вы добавляете неиспользуемый аргумент int
:
tclass operator++(int)
Также обратите внимание, что приращение префикса лучше возвращает tclass &
, поскольку результат может использоваться после: (++rr).x
.
Опять же, обратите внимание, что приращение постфикса выглядит так:
tclass operator++(int)
{
tclass temp = *this;
++*this; // calls prefix operator ++
// or alternatively ::operator++(); it ++*this weirds you out!!
return temp;
}