Junior — Middle
De que forma pode redefinir o comportamento da operação de incremento em prefixo de uma variável no seu código?
sobes.tech IA
Resposta da IA
В C++ поведение операции префиксного увеличения (например, ++x) можно переопределить, реализовав оператор operator++() в классе.
Для префиксного инкремента обычно определяют оператор без параметров, возвращающий ссылку на изменённый объект:
class Counter {
int value;
public:
Counter(int v) : value(v) {}
// Префиксный инкремент
Counter& operator++() {
++value;
return *this;
}
int getValue() const { return value; }
};
Такой оператор позволяет использовать ++obj; с ожидаемым поведением.
Отличие от постфиксного инкремента в том, что постфиксный принимает int в параметрах, а префиксный — нет.