1. 定义point类,有坐标x,y两个数据成员,对point类重载“++”(自增),--(自减)运算符,实现对坐标值的改变。
时间: 2024-11-04 09:13:56 浏览: 71
在C++中,我们可以定义一个名为`Point`的类,它有两个私有数据成员`x`和`y`表示点的坐标。然后,为了实现加法和减法操作,我们需要覆盖`++`(自增)和`--`(自减)运算符,通过它们我们可以改变坐标值。以下是`Point`类的一个简单实现:
```cpp
class Point {
private:
double x;
double y;
public:
// 构造函数
Point(double x = 0, double y = 0) : x(x), y(y) {}
// 数据成员访问和设置
double getX() const { return x; }
double getY() const { return y; }
void setX(double newX) { x = newX; }
void setY(double newY) { y = newY; }
// 自增和自减运算符重载
Point& operator++() {
++x;
++y;
return *this;
}
Point operator++(int) {
Point temp(*this);
++*this;
return temp;
}
Point& operator--() {
--x;
--y;
return *this;
}
Point operator--(int) {
Point temp(*this);
--*this;
return temp;
}
};
```
在这个例子中,`operator++()`和`operator--()`都是前缀形式(即`p++`),而`operator++(int)`和`operator--(int)`则是后缀形式(即`++p`)。当你对一个`Point`对象使用这些运算符时,它们会直接修改该对象的坐标值。
阅读全文