欢迎来到天天文库
浏览记录
ID:35530792
大小:103.76 KB
页数:8页
时间:2019-03-25
《c第五次实验报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、1、实验目的根据现有类建立新类;学习构造基类和虚函数的用法。2、实验内容应用VC++6.0的编辑环境构造一个类Jhtx及其派生类,该类主要实现关于儿何图形的基本操作。对于基类“几何图形”,有求面积、求体积的函数(纯虚函数),其派生类圆和矩形主要有初始化(构造函数),求面积,求周长操作,类圆的派生类圆球和圆柱有求表面积、体积操作。试在主函数中分别定义圆、圆球、圆柱以及矩形的对象,并调用其成员函数实现英相应操作。GeometryCircleradiums■Circle()■~Circle()Geometry()~Geometry()GetArea()GetPerim
2、eter()Getcolume()show(RectanglRectangle(~Rectangle(ColumnColumn()〜Column()3、概要设计(1)实现的功能:本次实验应用到了继承与多态的一些主要应用,通过构造类及其派生类,实现关于儿何图形的基本操作。对于基类“儿何图形”,有求面积,求周长操作(纯虚函数),其派生类圆和矩形主要有初始化(构造函数),求面积,求周长操作,类圆的派生类圆球和圆柱有求表面积、体积操作。(2)函数原型及纯虚函数:Geometry(doubler);〃构造函数〜GeometryO;〃析构函数virtualdoubleGet
3、Area()=O;〃纯虚函数,求面积〃纯虚函数,求周长〃球体积惭数〃纯虚函数,输出函数virtualdoubleGetperimeter()=O;virtualdoubleGetcolume();virtualvoidshow()=0;4、详细设计1、声明一个抽象类,在内定义纯虚函数:classGeometry{private:doubleR;public:Geometry(doubler)R=r;}"Geometry()0virtualdoubleGetArea()=0;//求面积的纯虚函数virtualdoubleGetperimeter()=0;//求周长
4、的纯虚函数virtualdoubleGetcolume(){return0;}virtualvoidshow()=0;//输出纯虚函数};2、声明圆派生类:classCircle:publicGeometry{//派生一个类Circleprotected:doubleradiums;//在派生类圆内定义一个保护变量public:Circle(doubler):Geometry(r)radiums=r;}^Circle()0doubleGetArea(){returnM^radiums*radiums;}〃求面积函数doubleGetperimeter(){ret
5、urn2*M*radiums;}//求周长函数voidshow()cout«/z圆的面积和周长cout<6、/求矩形的面积doubleGetperimeter(){return2*(L+W);}//求矩形的周长voidshow(){COUt«/Z矩形的面积和周长——cout<<,z它的面积是:"〈〈GetAreaO<〈endl;cout<,它的周长是:"〈〈Getperimeter()<7、求圆球的面积zz«endl;z/«endl;doubleGetcolume()return4/3*M*radiums*radiums*radiurns;}//球圆球的体积voidshow(){cout<〈"球的表面积和周长ndl;cout<8、e(x){H二h;}//
6、/求矩形的面积doubleGetperimeter(){return2*(L+W);}//求矩形的周长voidshow(){COUt«/Z矩形的面积和周长——cout<<,z它的面积是:"〈〈GetAreaO<〈endl;cout<,它的周长是:"〈〈Getperimeter()<7、求圆球的面积zz«endl;z/«endl;doubleGetcolume()return4/3*M*radiums*radiums*radiurns;}//球圆球的体积voidshow(){cout<〈"球的表面积和周长ndl;cout<8、e(x){H二h;}//
7、求圆球的面积zz«endl;z/«endl;doubleGetcolume()return4/3*M*radiums*radiums*radiurns;}//球圆球的体积voidshow(){cout<〈"球的表面积和周长ndl;cout<8、e(x){H二h;}//
8、e(x){H二h;}//
此文档下载收益归作者所有