Я пытаюсь справиться с перегрузкой оператора в первый раз, и я написал этот код, чтобы перегрузить оператор ++ для увеличения переменных класса i
и x
на единицу. Он выполняет свою работу, но компилятор показал следующие предупреждения:
Предупреждение 1 предупреждение C4620: не найдена постфиксная форма «оператор ++» для типа «tclass», используется префиксная форма c:\users\ahmed\desktop\cppq\cppq\cppq.cpp 25
Предупреждение 2, предупреждение C4620: не найдена постфиксная форма «оператор ++» для типа «tclass», используется префиксная форма c:\users\ahmed\desktop\cppq\cppq\cppq.cpp 26
Это мой код:
class tclass{
public:
int i,x;
tclass(int dd,int d){
i=dd;
x=d;
}
tclass operator++(){
i++;
x++;
return *this;
}
};
int main() {
tclass rr(3,3);
rr++;
rr++;
cout<<rr.x<<" "<<rr.i<<endl;
system("pause");
return 0;
}
++*this;
сбивает меня с толку. Я использую::operator++();
. Что сбивает с толку других. 30.11.2011++*this;
показывает ошибку:Error 1 error C2675: unary '++' : 'tclass' does not define this operator or a conversion to a type acceptable to the predefined operator c:\users\ahmed\desktop\cppq\cppq\cppq.cpp 14
30.11.2011operator++()
обычноtclass&
. 01.12.2011