设计点类 point,能够表示平面当中的任意点 (1)数据成员包括两点坐标(x,y),成员函数包括构造函数、析构函数、复制构造函数; (2)包括求点的坐标的公有接口函数,打印点坐标的成员函数,并在主函数中调用。 (3)在主函数中实例化出两个点a(0,0),b(6,8),求出两点间的距离。
时间: 2023-05-31 09:20:47 浏览: 153
### 回答1:
(1)根据题意,可以表达任意意点的数据成员包括两点坐标(x,y),成员函数包括构造函数、析构函数、复制构造函数。
(2)包括求点坐标的公有接口函数,打印点坐标的成员函数,并在主函数中调用。
(3)在主函数中实例化两个点a(0,0)和b(6,8),并表示它们之间的距离。
### 回答2:
设计点类 point,能够表示平面当中的任意点。
class point{
private:
float x;
float y;
public:
point(){ //默认构造函数
x = 0;
y = 0;
}
point(float xx, float yy){ //构造函数
x = xx;
y = yy;
}
~point(){ //析构函数
cout << "point object is destroyed." << endl;
}
point(const point& p){ //复制构造函数
x = p.x;
y = p.y;
}
float getX(){ //获取横坐标
return x;
}
float getY(){ //获取纵坐标
return y;
}
void printPoint(){ //打印点坐标
cout << "The coordinates are: (" << x << ", " << y << ")" << endl;
}
};
在主函数中实例化出两个点a(0,0),b(6,8),求出两点间的距离。
int main(){
point a(0, 0); //实例化点a
point b(6, 8); //实例化点b
float distance = sqrt(pow(b.getX() - a.getX(), 2) + pow(b.getY() - a.getY(), 2)); //计算两点之间的距离
a.printPoint(); //打印点a的坐标
b.printPoint(); //打印点b的坐标
cout << "The distance between a and b is: " << distance << endl; //打印两点之间的距离
return 0;
}
### 回答3:
设计点类Point,表示平面上的任意点。首先定义数据成员x和y表示点的坐标;构造函数、析构函数和复制构造函数用于创建、销毁和复制点对象。
接下来,定义公有的访问接口函数getX()和getY()用于获取点的横纵坐标,并定义成员函数print()用于打印点的坐标信息。
最后,在主函数中实例化两个点对象a(0,0)和b(6,8),并计算它们之间的距离。距离的计算方法可以使用勾股定理,即d=sqrt((x2-x1)^2+(y2-y1)^2),其中x1和y1是点a的横纵坐标,x2和y2是点b的横纵坐标。
下面是代码实现:
```
#include <iostream>
#include <cmath>
using namespace std;
class Point {
private:
double x;
double y;
public:
Point(double X, double Y) {
x = X;
y = Y;
}
Point(const Point& p) {
x = p.x;
y = p.y;
}
~Point() {}
double getX() const {
return x;
}
double getY() const {
return y;
}
void print() const {
cout << "(" << x << "," << y << ")" << endl;
}
};
int main() {
Point a(0, 0);
Point b(6, 8);
double distance = sqrt(pow(b.getX()-a.getX(), 2) + pow(b.getY()-a.getY(), 2));
a.print();
b.print();
cout << "Distance between a and b: " << distance << endl;
return 0;
}
```
运行结果:
```
(0,0)
(6,8)
Distance between a and b: 10
```
阅读全文