(1)设计一个立体图形类(CStereoShape类),并满足如下要求: 1)CStereoShape类有一个纯虚函数GetArea,能够获取立方体的表面积; 2)CStereoShape类有一个纯虚函数GetVolume,能够获取立方体的体积;
时间: 2024-02-09 20:11:42 浏览: 55
好的,下面是一个满足要求的立体图形类 CStereoShape 的设计:
```cpp
class CStereoShape {
public:
virtual double GetArea() = 0; // 获取立方体的表面积
virtual double GetVolume() = 0; // 获取立方体的体积
};
```
这个类中只有两个纯虚函数,分别用于获取立方体的表面积和体积。由于这两个函数在 CStereoShape 类中没有具体的实现,所以 CStereoShape 是一个抽象类,不能实例化。
其他的立体图形类(例如立方体类 Cube 或者球体类 Sphere)可以继承 CStereoShape 类,并重写 GetArea 和 GetVolume 函数,以实现具体的功能。例如:
```cpp
class Cube : public CStereoShape {
private:
double m_length; // 立方体的边长
public:
Cube(double length) : m_length(length) {}
virtual double GetArea() override {
return 6 * m_length * m_length;
}
virtual double GetVolume() override {
return m_length * m_length * m_length;
}
};
```
这个 Cube 类继承了 CStereoShape 类,并且实现了 GetArea 和 GetVolume 函数,用于计算立方体的表面积和体积。在这个类中,立方体的边长由构造函数传入。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)