C++运算符重载之自增(++)、自减(--)运算符

例如,对类Point重载++(自增)、--(自减)运算符。

操作如下:

#include
using namespace std;


class Point{
public:
Point(int x,int y){X=x;Y=y;}
~Point(){}
Point & operator ++();  //前置操作 
Point operator ++(int); //后置操作
Point & operator --();  //前置操作 
Point operator --(int); //后置操作 
int GetX(){return X;}
int GetY(){return Y;}
private:
int X,Y;
};


Point& Point::operator ++()
{
X++;
Y++;
return *this;
}


Point Point::operator ++(int)
{
Point temp=*this;
++(*this);
return temp;
}


Point& Point::operator --()
{
X--;
Y--;
return *this;
}


Point Point::operator --(int)
{
Point temp=*this;
--(*this);
return temp;
}


int main()
{
Point A(4,6);
cout<<"A的值为:"<A++;
cout<<"A的值为:"<++A;
cout<<"A的值为:"<A--;
cout<<"A的值为:"<--A;
cout<<"A的值为:"<return 0;

}

你可能感兴趣的:(C/C++学习)