定义Point类,有坐标x, y两个成员变量,对Point类重载“++”、“- -”运算符,实现对坐标值的改变。
2.问题分析对Point类重载“++”、“- -”运算符。包括前置++、-- 以及 后置++、-- 。
运算符重载为类成员函数 语法格式如下:
返回值类型 类名::operator 运算符(形参表){
函数体;
}
其中:
(1)“返回值类型”为函数执行结束后返回的数据类型。
(2)operator为关键字,其后为要重载的运算符“+”。
(3)参数列表为要操作的 数据类型。
3.代码实现#includeusing namespace std; //Point class Point{ public: //无参构造 Point(){} //有参构造 Point(float x,float y){ this->x=x; this->y=y; } //重载前置、后置++、--声明 //注意:为区分前置、后置,因此在后置“参数列表”中传入一个int数据,只用于区分,无任何作用 Point operator++(); Point operator--(); Point operator++(int); Point operator--(int); //重载<< friend ostream & operator<<(ostream &out,const Point &p); ~Point(){} //析构函数 private: float x; //坐标x float y; //坐标y }; //实现前置++重载 Point Point::operator++(){ return Point(++x,++y); } //实现后置++重载 Point Point::operator++(int){ Point p=(*this); ++(*this); return p; } //实现前置--重载 Point Point::operator--(){ return Point(--x,--y); } //实现后置--重载 Point Point::operator--(int){ Point p=(*this); --(*this); return p; } //<<重载 ostream & operator<<(ostream &out,const Point &p){ out<<"("< 4.运行结果



