现有一个C++类Triangle,其中包含了三个属性a、b、c,分别表示三角形的三条边长,以及两个方法Perimeter()和Area(),分别计算三角形的周长和面积。我们需要在此基础上编写构造函数和析构函数。
构造函数是一个特殊的函数,用于初始化对象的数据成员。在Triangle类中,我们可以编写一个构造函数来初始化三边的长度。具体实现代码如下:
class Triangle {
public:
Triangle(double a = 0.0, double b = 0.0, double c = 0.0) {
this->a = a;
this->b = b;
this->c = c;
}
double Perimeter() {
return a + b + c;
}
double Area() {
double p = Perimeter() / 2.0;
return sqrt(p * (p - a) * (p - b) * (p - c));
}
private:
double a, b, c;
};
在上述代码中,我们使用了双冒号(::)来访问类Triangle的数据成员a、b和c,以区分构造函数的参数名字。
析构函数是在对象生命周期结束时自动调用的函数,用于释放对象占用的资源。在Triangle类中,由于未使用任何资源,因此不需要定义析构函数。
至此,我们已经将Triangle类的构造函数和析构函数进行了编写和解释。