复制
收藏
提问
简洁
用c++定义一个矩形类,其中包括如下内容: 保护数据成员: float length; float width; //矩形的长度和宽度 公有成员函数: 构造函数 //初始化矩形的长度与宽度 float area() //计算面积 void disp() //显式结果(矩形的面积) 利用矩形类为基类,公有派生长方体类,其中包括如下内容: 私有数据成员:float height; //长方体的高 公有成员函数:构造函数 //初始化长方体的高 float calv() //计算长方体的体积 void disp() //显式结果(底面积以及长方体的体积) 在主函数中,定义长方体对象并检验计算和显示功能。 输入描述 输入长、宽、高,以空格隔开。 输出描述 长方体的底面积和体积。 样例输入1: 2 3 4 样例输出1: 6 24 样例输入2: 10 20 30 样例输出2: 200 6000
2月前
全网
文档
学术
百科
知识库
回答简洁模式
深入研究一些
根据您提供的信息和要求,以下是使用C++定义矩形类和基于该矩形类派生出长方体类的示例代码:
#include <iostream>
// 定义矩形类
class Rectangle {
protected:
float length; // 矩形的长度
float width; // 矩形的宽度
public:
// 构造函数,初始化矩形的长度和宽度
Rectangle(float l, float w) : length(l), width(w) {}
// 计算面积的成员函数
float area() {
return length * width;
}
// 显示结果的成员函数
void disp() {
std::cout << "Rectangle area: " << area() << std::endl;
}
};
// 定义长方体类,继承自矩形类
class Cuboid : public Rectangle {
private:
float height; // 长方体的高
public:
// 构造函数,初始化长方体的高
Cuboid(float l, float w, float h) : Rectangle(l, w), height(h) {}
// 计算体积的成员函数
float calv() {
return area() * height; // 利用矩形类的area()函数计算底面积,再乘以高
}
// 显示结果的成员函数
void disp() {
std::cout << "Cuboid base area: " << area() << ", Cuboid volume: " << calv() << std::endl;
}
};
int main() {
// 输入长、宽、高
float length, width, height;
std::cin >> length >> width >> height;
// 定义长方体对象
Cuboid cuboid(length, width, height);
// 检验计算和显示功能
cuboid.disp();
return 0;
}
这段代码首先定义了一个Rectangle
类,其中包含保护数据成员length
和width
,以及公有成员函数,包括构造函数、计算面积的area()
函数和显示结果的disp()
函数。然后,定义了一个Cuboid
类,它公有继承自Rectangle
类,并添加了私有数据成员height
和相应的公有成员函数,包括构造函数、计算体积的calv()
函数和显示结果的disp()
函数。在main
函数中,程序接收用户输入的长、宽、高,创建一个Cuboid
对象,并调用其disp()
函数来显示底面积和体积。12345678910
你觉得结果怎么样?