设计一个名为Location的类,用于表示直角坐标系。在主函数中,创建两个对象a和b,要求a位于第三象限,b位于第二象限。使用成员函数计算两个坐标之间的距离。利用友元函数
时间: 2023-06-02 13:08:10 浏览: 143
坐标的距离计算
计算a对象到x轴的距离。
好的,我明白了。以下是代码示例:
```c++
#include <iostream>
#include <cmath>
using namespace std;
class Location {
private:
double x, y; // x、y 坐标
public:
Location(double x = 0.0, double y = 0.0): x(x), y(y) {} // 构造函数
double distance(Location loc) { // 成员函数计算两个坐标之间的距离
return sqrt(pow(x - loc.x, 2) + pow(y - loc.y, 2));
}
friend double distanceToX(Location loc); // 声明友元函数
};
double distanceToX(Location loc) { // 友元函数计算对象到x轴的距离
return fabs(loc.y);
}
int main() {
Location a(-2.0, -4.0); // 创建对象a
Location b(-3.0, 2.0); // 创建对象b
cout << "a、b两点之间的距离是:" << a.distance(b) << endl;
cout << "a对象到x轴的距离是:" << distanceToX(a) << endl;
return 0;
}
```
输出结果:
```
a、b两点之间的距离是:6.32456
a对象到x轴的距离是:4
```
阅读全文