欢迎来到天天文库
浏览记录
ID:47035805
大小:204.13 KB
页数:28页
时间:2019-07-03
《c++派生类与继承实验报告材料》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、实用文档实验2派生类与继承实验课程名:面向对象程序设计(C++)专业班级:学号:姓名:实验时间:实验地点:指导教师:2.1实验目的和要求(1)掌握派生类的声明方法和派生类构造函数的定义方法。(2)掌握不同继承方式下,基类成员在派生类中的访问属性。(3)掌握在继承方式下,构造函数与析构函数的执行顺序与构造规则。(4)学习虚基类在解决二义性问题中的作用。 标准文案实用文档二、实验内容一、构造一个类Geometry及其派生类,该类主要实现关于几何图形的基本操作。对于基类“几何图形”,有求面积、求体积的函数
2、(纯虚函数),其派生类圆和矩形主要有初始化(构造函数),求面积,求周长操作,类圆的派生类圆球和圆柱有求表面积、体积操作。试在主函数中分别定义圆、圆球、圆柱以及矩形的对象,并调用其成员函数实现其相应操作。CircleradiumsCircle()~Circle()BallBall()~Ball()GeometryGeometry()~Geometry()GetArea()GetPerimeter()Getcolume()show()ColumnColumn()~Column()RectangleRec
3、tangle()~Rectangle()实验代码如下:#includeusingnamespacestd;classGeometry{public:Geometry(){}标准文案实用文档~Geometry(){}doubleGetArea(){}//求面积函数doubleGetPerimeter(){}//求体积函数doubleGetcolume(){}//求周长函数virtualshow(){}};classCircle:publicGeometry{public:Circl
4、e(doublei){radiums=i;}~Circle(){}doubleGetArea();doubleGetcolume();doubleR(){returnradiums;}show();private:标准文案实用文档doubleradiums;};doubleCircle::GetArea(){doubleS;S=3.14*radiums*radiums;returnS;}doubleCircle::Getcolume(){doubleL;L=2*3.14*radiums;return
5、L;}Circle::show(){cout<<"圆的面积为:"<6、doublelength;doublewide;};doubleRectangle::GetArea(){doubleS;S=length*wide;returnS;}doubleRectangle::Getcolume(){doubleL;标准文案实用文档L=2*(length+wide);returnL;}Rectangle::show(){cout<<"矩形的面积为:"<7、cle{public:Ball(doublei):Circle(i){};~Ball(){};doubleGetArea();doubleGetPerimeter();show();};doubleBall::GetArea(){doubleS;S=4*3.14*R()*R();returnS;标准文案实用文档};doubleBall::GetPerimeter(){doubleV;V=(4/3)*3.14*R()*R()*R();returnV;}Ball::show(){cout<<"球的体积为8、:"<
6、doublelength;doublewide;};doubleRectangle::GetArea(){doubleS;S=length*wide;returnS;}doubleRectangle::Getcolume(){doubleL;标准文案实用文档L=2*(length+wide);returnL;}Rectangle::show(){cout<<"矩形的面积为:"<7、cle{public:Ball(doublei):Circle(i){};~Ball(){};doubleGetArea();doubleGetPerimeter();show();};doubleBall::GetArea(){doubleS;S=4*3.14*R()*R();returnS;标准文案实用文档};doubleBall::GetPerimeter(){doubleV;V=(4/3)*3.14*R()*R()*R();returnV;}Ball::show(){cout<<"球的体积为8、:"<
7、cle{public:Ball(doublei):Circle(i){};~Ball(){};doubleGetArea();doubleGetPerimeter();show();};doubleBall::GetArea(){doubleS;S=4*3.14*R()*R();returnS;标准文案实用文档};doubleBall::GetPerimeter(){doubleV;V=(4/3)*3.14*R()*R()*R();returnV;}Ball::show(){cout<<"球的体积为
8、:"<
此文档下载收益归作者所有