6-9 二维向量相加(C++ 运算符重载) (10分)
裁判测试程序样例中展示的是一段二维向量类TDVector的定义以及二维向量求和的代码,其中缺失了部分代码,请补充完整,以保证测试程序正常运行。
函数接口定义:
提示:需要补充的函数有:
- 带参构造函数
- getX
- getY
- setX
- setY
- 运算符重载函数
判测试程序样例:
#include
#include
using namespace std;
class TDVector{
private:
double x;
double y;
public:
TDVector(){
x = y = 0;
}
你提交的代码将被嵌在这里(替换本行内容)
};
int main(){
TDVector a;
double x, y;
cin >> x >> y;
TDVector b(x, y);
cin >> x >> y;
TDVector c;
c.setX(x);
c.setY(y);
TDVector d;
d = a + b + c;
cout << fixed << setprecision(2) << d.getX() << ’ ’ << d.getY();
return 0;
}
输入样例:
1.1 2.2
3.3 4.4
输出样例:
4.40 6.60
我的代码:
TDVector(double a,double b)
{
x=a,y=b;
}
void setX(double a)
{
x=a;
}
void setY(double b)
{
y=b;
}
double getX()
{
return x;
}
double getY()
{
return y;
}
TDVector operator+(TDVector &a)
{
TDVector c;
c.x = this->x + a.x;
c.y = this->y + a.y;
return c;
}