定义派生类长方体类Cuboid,公有继承第1题的Rectangle类。在Cuboid类中增加私有数据成员作为长方体的高(整型),公有成员函数volume()计算长方体的体积。在main函数中输入3个整型数据作为长方体的长、宽和高,计算长方体的体积并输出。 【输入形式】 3个整数 【输出形式】 1个整数 【样例输入】 【样例输出】 【样例说明】 【评分标准】 #include <iostream> using namespace std; class Rectangle { private: public: //构造函数 //面积函数 }; class Cuboid:public Rectangle { private: public: //构造函数 //体积函数 }; int main() { int x,y,z; cin>>x>>y>>z; //定义Cuboid类对象c并初始化 cout<<c.volumn()<<endl; return 0; }
时间: 2024-02-14 12:07:17 浏览: 65
按以下描述和要求建立两个类:基类 Rectangle(矩形类) 和派生类 Cube(正方体)
好的,我明白了。以下是代码实现:
```
#include <iostream>
using namespace std;
class Rectangle {
private:
int length;
int width;
public:
Rectangle(int l, int w) {
length = l;
width = w;
}
int area() {
return length * width;
}
};
class Cuboid : public Rectangle {
private:
int height;
public:
Cuboid(int l, int w, int h) : Rectangle(l, w) {
height = h;
}
int volume() {
return area() * height;
}
};
int main() {
int x, y, z;
cin >> x >> y >> z;
Cuboid c(x, y, z);
cout << c.volume() << endl;
return 0;
}
```
注意,这里的 `Rectangle` 类中的 `area` 函数没有加 `virtual` 关键字,因为 `Cuboid` 类中的 `volume` 函数只需要调用 `area` 函数即可,不需要在 `Cuboid` 类中重写 `area` 函数。
阅读全文