问答题

【说明】 ①在类体中添加函数move(double ax,double ay)的定义,使得点的坐标x和y分别移动 ax和ay个单位。 ②在类定义外完成重载的两个构造函数CPosition()和CPosition(double dx,double dy),其中前者为不带参数的构造函数,使CPosition对象的默认值为x=0,y=0,后者为带参数的构造函数,把数据成员x和y分别初始化为参数dx和dy的值。 ③完成函数double distance(double bx,double by)的定义,该函数返回*this和点(bx, by)的距离。 注意:除在指定的位置添加语句外,请不要改动程序中的其他语句。 源程序文件test5.cpp清单如下: #include<iostream.h> #include<math.h> class CPosition { public: CPosition(); CPosition(double dx,double dy); double getx(); double gety(); (1) double distance(double bx,double by); private: double x; double y; }; (2) { x=0;y=0; } CPosition::CPosition(doub,e dx,doub,e dy) { x=dx; y=dy; } double CPosition::getx() { return x; } double CPosition::gety() { return y; } double CPosition::distance(double bx,double by) { (3) } vold main() { double a,b; cout<<"|nput x,y position of a point:"; cin >> a >> b; CPosition psA(a,b); cout<<"Input x,y position of another point:"; cin >>a >> b; cout <<"The distance is" <<psA.distance(a,b) <<end1; }

【参考答案】

(1)void move(double ax,double ay){x+=ax;y+ =ay;};(2)CPositio......

(↓↓↓ 点击下方‘点击查看答案’看完整答案 ↓↓↓)
热门 试题