设计一个矩形类Rect,定义数据成员,分别表示矩形的长、宽:定义构造因数给数据成员赋初值,定义能求解矩形面积、周长的方法。然后,在矩形类Bess,上派生出长方体类 Cuboid。添加数据成员,表江知体的高,定义构造函数给数据成员赋贼初始值,定义能求解矩形表面积、体积的方法。
时间: 2024-12-21 21:21:29 浏览: 18
首先,我们设计一个基础的矩形类`Rect`:
```cpp
class Rect {
private:
double length; // 矩形的长度
double width; // 矩形的宽度
public:
// 构造函数,初始化长和宽
Rect(double l, double w) : length(l), width(w) {}
// 计算并返回矩形面积
double getArea() const {
return length * width;
}
// 计算并返回矩形周长
double getPerimeter() const {
return 2 * (length + width);
}
};
```
接着,我们创建一个派生自`Rect`的长方体类`Cuboid`,即`Bess`类,这里我们将名字改为`Cuboid`以避免混淆:
```cpp
class Cuboid : public Rect {
private:
double height; // 长方体的高度
public:
// 构造函数,初始化长、宽和高度
Cuboid(double l, double w, double h) : Rect(l, w), height(h) {}
// 继承矩形的面积计算,并增加体积计算
double getSurfaceArea() const {
return 2 * (length * width + length * height + width * height); // 表面积 = 2*(长*宽+长*高+宽*高)
}
// 新增体积计算
double getVolume() const {
return length * width * height;
}
};
```
阅读全文