设计一个c++程序,利用友元函数计算平面上两点之间的距离
时间: 2023-07-14 08:12:30 浏览: 136
有关友元函数的使用说明如下-c++程序设计谭浩强完整版
可以设计一个Point类表示平面上的点,并在类中定义一个友元函数来计算两点之间的距离。具体实现如下:
```c++
#include <iostream>
#include <cmath> // 引入数学函数库
using namespace std;
class Point {
private:
double x, y; // 表示平面上的点的 x 和 y 坐标
public:
Point(double _x, double _y) : x(_x), y(_y) {}
friend double distance(const Point& p1, const Point& p2); // 友元函数声明
};
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(1, 2);
Point p2(3, 4);
cout << "The distance between p1 and p2 is: " << distance(p1, p2) << endl;
return 0;
}
```
在上述程序中,Point 类中定义了一个友元函数 `distance`,该函数计算两个点之间的距离。在 `main` 函数中,我们创建了两个点 `p1` 和 `p2`,并调用 `distance` 函数来计算它们之间的距离。
阅读全文