1、第一种方法,传值重载:
#ifndef POINT_H
#define POINT_H
#include<iostream>
using namespace std;
class Point
{
protected:
int x;
int y;
public:
Point(int a,int b)
{
x=a;
y=b;
}
Point operator++();
Point operator++(int);
Point operator--();
Point operator--(int);
void showPoint();
};
Point Point::operator++()//前置++
{
++x;
++y;
return *this;
}
Point Point::operator++(int)//后置++
{
x++;
y++;
return *this;
}
Point Point::operator--()//前置--
{
--x;
--y;
return *this;
}
Point Point::operator--(int)//后置--
{
x--;
y--;
return *this;
}
void Point::showPoint()
{
cout<<"x="<<x<<" y="<<y<<endl;
}
#endif // POINT_H
第二种方法,传址重载;