C++重载减法运算符以实现Point类对象的减法运算
时间: 2024-05-11 20:19:20 浏览: 184
c++运算符的重载
要实现Point类对象的减法运算,需要重载减法运算符"-". 重载运算符是指在类中定义一个成员函数,该函数的名称就是运算符号,它可以像普通函数一样被调用,只不过它的调用方式是通过运算符来调用的。
下面是一个示例代码:
```c++
#include <iostream>
using namespace std;
class Point {
public:
Point(int x = 0, int y = 0) : m_x(x), m_y(y) {}
Point operator-(const Point& other) const {
return Point(m_x - other.m_x, m_y - other.m_y);
}
void print() const {
cout << "(" << m_x << ", " << m_y << ")" << endl;
}
private:
int m_x;
int m_y;
};
int main() {
Point p1(3, 4);
Point p2(1, 2);
Point p3 = p1 - p2;
p3.print(); // 输出 (2, 2)
return 0;
}
```
在上面的代码中,我们定义了Point类,其中重载了减法运算符"-". 运算符函数返回一个Point对象,该对象的坐标是两个Point对象坐标的差值。在主函数中,我们创建了三个Point对象,其中p3对象是p1对象与p2对象相减得到的结果。最后输出p3对象的坐标。
阅读全文