设计一个点类Point,实现点对象之间的+和-运算。 #include<iostream> using namespace std; 提供补充代码 int main() { Point p1,p2,psum,psub; int x,y; cin>>x>>y; p1.setP(x,y); cin>>x>>y; p2.setP(x,y); psum=p1+p2; psub=p1-p2; cout<<"两点相加:"; psum.show(); cout<<"两点相减:"; psub.show(); }
时间: 2024-03-20 07:43:20 浏览: 94
point类程序
好的,以下是一个基于C++的实现:
```cpp
#include<iostream>
using namespace std;
class Point {
private:
int x, y;
public:
void setP(int x, int y) {
this->x = x;
this->y = y;
}
void show() {
cout << "(" << x << ", " << y << ")" << endl;
}
Point operator +(Point const &obj) {
Point res;
res.x = x + obj.x;
res.y = y + obj.y;
return res;
}
Point operator -(Point const &obj) {
Point res;
res.x = x - obj.x;
res.y = y - obj.y;
return res;
}
};
int main() {
Point p1, p2, psum, psub;
int x, y;
cin >> x >> y;
p1.setP(x, y);
cin >> x >> y;
p2.setP(x, y);
psum = p1 + p2;
psub = p1 - p2;
cout << "两点相加:";
psum.show();
cout << "两点相减:";
psub.show();
return 0;
}
```
在这个实现中,我们定义了一个名为 Point 的类,它有两个私有属性 x 和 y 表示点的横纵坐标。我们提供了两个公有方法 setP 和 show,用于设置和显示点的坐标。我们重载了 + 和 - 运算符,以便能够对两个点对象进行加减运算。在加法运算中,我们将两个点的横纵坐标分别相加得到新的点对象;在减法运算中,我们将两个点的横纵坐标分别相减得到新的点对象。在主函数中,我们通过 cin 输入两个点的坐标,分别对它们进行加减运算,并通过 cout 输出运算结果。
阅读全文