写一个几何体类给出计算面积的函数;,三角形类继承几何体类重写计算面积的函数,矩形继承几何体类计算面积的函数
时间: 2024-09-11 16:09:04 浏览: 56
常用设计编程工具 几何体计算表
在C++中,你可以设计一个通用的`GeometricShape`类,然后让`Triangle`和`Rectangle`两个特定形状类分别继承它并重写计算面积的方法。下面是这样的一个基本框架:
```cpp
// GeometricShape基类
class GeometricShape {
protected:
virtual double calculateArea() const = 0; //纯虚函数,所有子类都需要实现
public:
// 公共方法
double getArea() const { return calculateArea(); }
};
// Triangle类继承自GeometricShape
class Triangle : public GeometricShape {
private:
double a, b, c;
public:
Triangle(double sideA, double sideB, double sideC) {
// 类同于前面的三角形构造函数...
}
// 重写父类的calculateArea方法
double calculateArea() override {
// 使用海伦公式...
}
};
// Rectangle类继承自GeometricShape
class Rectangle : public GeometricShape {
private:
double length, width;
public:
Rectangle(double length_, double width_) {
length = length_;
width = width_;
}
// 重写父类的calculateArea方法
double calculateArea() override {
return length * width;
}
};
```
在这个设计下,`Triangle`和`Rectangle`类都实现了`GeometricShape`的`calculateArea`方法,各自根据自身的特性来计算面积。通过`getArea()`方法,可以统一访问所有子类的面积。
阅读全文