欢迎来到天天文库
浏览记录
ID:42508363
大小:57.50 KB
页数:5页
时间:2019-09-16
《实验三继承与派生》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、A实验报告预习分操作分报告分总成绩学号姓名实验名称继承与派生班级口动化1106实验U期2013.10.30指导老师程磊一、实验目的1、学习声明和使用类的继承关系,声明派牛类。2、熟悉各种继承方式下对基类成员的访问控制。二、实验内容1、芦明一个基类Shape,在此基础上派牛出Rectangle和Circle类,二者都具有GetArea()函数以计算对彖的面积;使用Rectangle类再创建一个派生类Squareo实现并测试这些类。2、声明一个object类,有数据成员weight及相应的操作函数,由此派生岀box类,增加数据成员height和width及相应的操作函数,声明一个bo
2、x对象,实现并测试这些类,同时观察构造函数和析构函数的调用顺序。三、实验注意事项程序中,需要编写一•个可执行函数与main主调函数,白主设计输入、输出值,使得结果可以由控制台显不输出。四、实验程序代码实验一代码:#includeusingnamespacestd;constfloatpi=3.141592654;classShape{public:floatGetArea();voidshow();};classRectangle:publicShape{public:Rectangle(){};Rectangle(floatcl,floatdl){d=dl;
3、c=cl;};floatGetArea(){returnc*d;}voidshow(){coutvv”矩形面积为:H«GetArea()«endl;};private:floatc,d;};classCircle:publicShape{public:Circle(floatrl){r=rl;};floatGetArea(){returnpi*r*r;};voidshow(){cout«"圆面积为:"«GetArea()«endl;};private:floatr;};classSquare:publicRectanglepublic:Square(floatwl):Rectan
4、gle(),w(wl){};BoatGctArca(){returnw*w;};voidshow(){cout«"正方形面积为:"«GetArea()«endl;};private:floatw;};intmain(){floatm,n;cout«"输入矩形长,宽:"«endl;cin»ni»n;RectangleR(m,n);R.GetArea();R.show();cout«"输入圆形的半径:"«endl;cin»m;CircleC(m);C.GetArea();C.show();coutvv”输入正方形的边长:"«endl;cin»m;SquareS(m);S.GetAre
5、a();S.show();return0;D:MicrosoftVisualStudioDebugtest.exe"输入矩形长,宽:69垣形面积盍:I54输人圆形站半径:4匮]面积为:50.2655输入正方形的边长:8正方形面积为,64Pvessanykeytoconi;inue实验二代码:#includcusingnamespacestd;classobject{public:object(){};object(floatweight1){weight=weight1;cout«nConstructingobjectH«endl;};floatgetw
6、eight(){returnweight;};-object(){cout«HDestiTictingobjectM«endl;};private:floatweight;};classBox:publicobject{public:Box(){);Box(floatweightjloatheight1,floatwidthl):object(weight){height=height1;width=width1;cout«nConstructingBox!H«endl;}floatgetweight(){returnobject::getweight();};floatgcth
7、cight(){returnheight;};floatgetwidth(){returnwidth;};〜Box(){cout«MDestructingBox!n«endl;};private:floatheight,width;//objectbb;};intmain(){Boxbox(4,5,6);cout«"盒子的重量,高,宽分别为:H«endl;cout«box.getweight()«,V,«box.getheight()«M,H«box.getwidth()«end
此文档下载收益归作者所有