显然不能 2021-06-16 10:22 采纳率: 66.7%
浏览 409
已采纳

计算正方体长方体体积

使用C++语言编写程序,计算出正方体和长方体的体积,要求:
(1)定义一个形状基类Shape ,至少含有两个数据成员。
(2)定义基类的派生类:正方体、长方体,都含有求体积的成员函数。
(3)定义主函数,求正方体和长方体的体积。
(4)每个类都有其构造函数与析构函数。

  • 写回答

1条回答 默认 最新

  • qfl_sdu 2021-06-16 10:44
    关注

    代码如下:如有帮助,请采纳一下,谢谢。

    #include <iostream>
    using namespace std;
    //定义shape类
    class Shape
    {
    private:
    	int length; //长
    	int width;  //宽
    
    public:
    	Shape(int a,int b)//构造函数,用a和b初始化形状的长和宽
    	{
    		length = a;
    		width = b;
    	}
    	~Shape(){}
    	virtual double getV() = 0; //声明一个虚函数,求形状的体积,由子类实现
    	int getLength(){return length;}//获取形状的长
    	int getWidth(){return width;}//获取形状的宽
    
    };
    //定义立方体类
    class Lifangti :public Shape
    {
    private:
    	int height;  //立方体有一个高度属性
    public:
    	Lifangti(int a):Shape(a,a){height = a;}//立方体类使用形状类的构造函数,初始化长和宽,并设置高度,因为立方体的长宽高相等,所以用一个数初始化长宽高
    	~Lifangti(){}//析构函数,因为没有资源需要释放,所以什么都不用做
    	double getV(){return getLength() * getWidth() * height;}//计算立方体的体积
    };
    //定义长方体类
    class Changfangti :public Shape
    {
    private:
    	int height;//长方体有一个高度属性
    public:
    	Changfangti(int a,int b,int c):Shape(a,b){height = c;}//长方体类使用形状类的构造函数,初始化长和宽,并设置高度
    	~Changfangti(){}//析构函数,因为没有资源需要释放,所以什么都不用做
    	double getV(){return getLength() * getWidth() * height;}//求长方体的体积,长*宽*高
    };
    int main()
    {
    	Lifangti lf(4);//创建一个立方体实例,边长是4
    	Changfangti cf(3,4,5);//创建一个长方体实例,长3宽4高5
    	cout << "边长为4的立方体体积:" << lf.getV() << endl;
    	cout << "长3宽4高5的长方体体积:" << cf.getV() << endl;
    	return 0;
    }
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥50 Dkeil5 CT107D单片机的程序编写
  • ¥30 Ubuntu20.04中PVN3D复现过程交叉编译问题
  • ¥15 模拟电路求复阻抗和传递函数,请各位拍照写一下解答过程
  • ¥60 不懂得怎么运行下载来的代码
  • ¥15 CST导出3D模型图为什么和软件显示不一样?
  • ¥15 加热反应炉PLC控制系统设计(相关搜索:梯形图)
  • ¥15 python 用Dorc包报错,我的写法和网上教的是一样的但是它显示无效参数,是什么问题
  • ¥15 经过滑动平均后的一维信号还原用什么结构好呢?
  • ¥15 指定IP电脑的访问设置
  • ¥30 matlab ode45 未发现警告,但是运行出错