1) 声明 Point 类,有坐标_x,_y 两个成员变量;对 Point 类重载“++(自增)”、 “——(自减)”运算符,实现对坐标值的改变。
时间: 2024-12-17 08:44:33 浏览: 10
对类Point重载(自增,自减)运算符
首先,我们需要声明一个名为`Point`的类,包含两个私有成员变量`_x`和`_y`,表示点的坐标。接下来,我们会重载前缀和后缀的自增(`++`)和自减(`--`)运算符,以便能够对点的坐标进行加一或减一的操作。这里是相关的类定义和操作符重载:
```cpp
class Point {
public:
// 声明坐标成员变量
private:
int _x;
int _y;
// 构造函数,设置初始坐标
Point(int x, int y) : _x(x), _y(y) {}
// 前缀自增操作:++point
Point &operator++() {
++_x;
++_y;
return *this; // 返回当前对象引用,保持链式调用
}
// 前缀自减操作:--point
Point &operator--() {
--_x;
--_y;
return *this;
}
// 后缀自增操作:point++
Point operator++(int) {
Point temp(*this);
++*this;
return temp;
}
// 后缀自减操作:point--
Point operator--(int) {
Point temp(*this);
--*this;
return temp;
}
};
```
在这个类中,`operator++()` 和 `operator--()` 会直接修改当前点的位置,而`operator++(int)` 和 `operator--(int)` 则会创建一个新的点对象,保存原始位置后再进行自增或自减操作。
阅读全文