定义坐标类point,私有数据成员x和y,公有数据成员构造函数,析构函数,显示坐标函数,利用友元函数distance访问类的成员计算距离,主函数中创建两点间距离(要求构造函数带有默认函数)这样的c++代码怎么写?
时间: 2024-02-24 15:58:33 浏览: 82
以下是符合您要求的 C++ 代码:
```c++
#include <iostream>
#include <cmath>
using namespace std;
class point {
private:
double x;
double y;
public:
// 构造函数
point(double x = 0, double y = 0) {
this->x = x;
this->y = y;
}
// 析构函数
~point() {}
// 显示坐标函数
void display() const {
cout << "(" << x << ", " << y << ")" << endl;
}
// 友元函数,计算两点间距离
friend double distance(const point& p1, const point& p2) {
double dx = p1.x - p2.x;
double dy = p1.y - p2.y;
return sqrt(dx * dx + dy * dy);
}
};
int main() {
point p1(0, 0);
point p2(3, 4);
cout << "p1: ";
p1.display();
cout << "p2: ";
p2.display();
cout << "Distance between p1 and p2: " << distance(p1, p2) << endl;
return 0;
}
```
在上面的代码中,我们定义了一个 `point` 类,该类具有 `x` 和 `y` 两个私有数据成员,和一些公有成员函数和友元函数。其中,构造函数带有默认参数,析构函数为空。`display` 函数用于显示坐标信息,`distance` 函数是一个友元函数,用于计算两点间距离。
在 `main` 函数中,我们创建了两个 `point` 类型的对象 `p1` 和 `p2`,并分别初始化它们的坐标。然后调用 `display` 函数显示它们的坐标,并调用 `distance` 函数计算两点间距离并输出。
阅读全文