用C++求三维坐标中任意两点的距离完整代码
时间: 2024-12-11 18:18:28 浏览: 14
在C++中,计算三维空间中两个点之间的距离通常使用欧几里得距离公式,该公式适用于二维或三维空间,其基本思想是计算两点间横纵坐标的差值的平方和然后开根号。以下是一个完整的代码示例:
```cpp
#include <iostream>
#include <cmath> // 引入数学库,用于sqrt函数
class Point3D {
public:
double x, y, z; // 定义三维坐标
// 构造函数初始化点的坐标
Point3D(double x = 0, double y = 0, double z = 0) : x(x), y(y), z(z) {}
// 计算两点间的距离
double distanceTo(const Point3D& other) const {
return std::sqrt(std::pow(other.x - this->x, 2) + std::pow(other.y - this->y, 2) + std::pow(other.z - this->z, 2));
}
};
int main() {
Point3D point1(1, 2, 3); // 第一个点
Point3D point2(4, 5, 6); // 第二个点
double distance = point1.distanceTo(point2);
std::cout << "The distance between point1 and point2 is: " << distance << std::endl;
return 0;
}
```
在这个例子中,我们首先创建了一个名为`Point3D`的类,它有三个私有成员变量表示三维坐标,并提供了一个构造函数用于初始化。`distanceTo`方法接受另一个`Point3D`对象作为参数,计算并返回两个点之间的距离。
阅读全文