3. 定义一个类Point,求两点之间的距离,包括构造和析构函数。
时间: 2024-10-14 22:12:31 浏览: 51
c++基础语法:构造函数与析构函数
好的,首先我们来创建一个名为`Point`的类,用于表示二维空间中的点,并包含计算两点之间距离的功能。这里我们将定义构造函数用于初始化点的位置,以及析构函数自动释放内存资源。
```cpp
#include <cmath>
class Point {
private:
double x; // 点的x坐标
double y; // 点的y坐标
public:
// 构造函数
explicit Point(double x = 0, double y = 0) : x(x), y(y) {}
// 计算两点间距离的成员函数
double distance(const Point& other) const {
return std::sqrt(std::pow(other.x - x, 2) + std::pow(other.y - y, 2));
}
// 析构函数
~Point() {} // C++默认析构函数,一般无需自定义,如果需要特殊清理操作可以添加
// 友元函数,用于打印实例信息
friend std::ostream& operator<<(std::ostream& os, const Point& point);
};
// 输出函数,方便查看Point实例
std::ostream& operator<<(std::ostream& os, const Point& point) {
return os << "Point (" << point.x << ", " << point.y << ")";
}
```
在这个类中,当我们创建`Point`对象时,通过构造函数传入坐标;想要获取两点间的距离时,可以直接调用`distance()`方法。当`Point`对象不再使用时,析构函数会在适当的时候自动执行,释放内部资源。
阅读全文