第13周项目4—立体类族共有的抽象类
来源:互联网 发布:优化员工队伍结构 编辑:程序博客网 时间:2024/06/05 05:10
*Copyright(c) 2016.烟台大学计算机与控制工程学院
*ALL rights reserved.
*文件名称:main.cpp
*作者:孙亚茹
*完成日期:2016年6月2日
*问题描述:定义抽象基类含有求表面积和体积的两个纯虚函数,定义指向基类的指针,利用这个指针求出各个派生类对象的表面积和体积。
*//
#include <iostream>using namespace std;class CSolid{public: virtual int area()=0; virtual int tiji()=0;};class CCube:public CSolid{private: double a;public: CCube(double a1=0.0):a(a1){}; int area(); int tiji();};int CCube::area(){ return a*a*6;}int CCube::tiji(){ return a*a*a;}class CBall:public CSolid{private: double r;public: CBall(double r1=0.0):r(r1){}; int area(); int tiji();};int CBall::area(){ return 3.14*r*r*6;}int CBall::tiji(){ return 3.14*r*r*r*4/3;}class CCylinder:public CSolid{private: double r; double h;public: CCylinder(double r1=0.0,double h1=0.0):r(r1),h(h1){}; int area(); int tiji();};int CCylinder::area(){ return 3.14*r*r*2+3.14*2*r*h;}int CCylinder::tiji(){ return 3.14*r*r*h;}int main(){ CCube c1(4.0); CBall b(4.0); CCylinder c2(4.0,6.0); CSolid *p[3]={&c1,&b,&c2}; double areas=0.0; double tijis=0.0; cout<<"正方体,球体,圆柱体对象的表面积分别是:"<<endl; int i; for(i=0;i<3;i++) { areas=areas+p[i]->area(); cout<<areas<<endl; } cout<<endl; cout<<"正方体,球体,圆柱体对象的体积分别是:"<<endl; for(i=0;i<3;i++) { tijis=tijis+p[i]->tiji(); cout<<tijis<<endl; }}
总结:
当多个基类的指针指向派生类多个对象时,可以声明为指针数组再利用循环,这样使程序更简单。
0 0
- 第13周项目4—立体类族共有的抽象类
- C++第13周项目 多态性 【项目4-立体类族共有的抽象类】
- 第13周实践项目4立体类族共有的抽象类
- 第13周-项目4-立体类族共有的抽象类
- 第13周项目4-立体类族共有的抽象类
- 第13周项目4-立体类族共有的抽象类
- 第13周项目4:立体类族共有的抽象类
- 第13周项目4--立体类族共有的抽象类
- 第13周实践项目4立体类族共有的抽象类
- 第13周项目4-立体类族共有的抽象类
- 第13周上机实践项目3——立体类族共有的抽象类
- 第13周项目3—立体类族共有的抽象类
- 第13周项目3立体类族共有的抽象类
- 第13周-多态性-项目3-立体类族共有的抽象类
- 第13周项目3-立体类族共有的抽象类
- 第13周 【项目3-立体类族共有的抽象类】
- 第13周项目3-立体类族共有的抽象类
- 第13周项目3-立体类族共有的抽象类
- JavaScript学习--Item32 DOM基础详解2
- 对象
- 由一个属性设置导致的一系列问题排查
- css样式大全(整理版)
- 第十二周项目训练1.3 阅读程序
- 第13周项目4—立体类族共有的抽象类
- 295. Find Median from Data Stream【H】【2.7】
- 第十四周实践项目3————数组类模板
- Android Studio Instant Run的工作原理
- JavaSript模块规范 - AMD规范与CMD规范介绍
- RenderTexture保存大于当前屏幕的图片
- Android Support兼容包详解
- 第十四周项目3:两个成员的类模板(2)
- PHP3.2中Model层的in操作的实现,特别针对字符串的操作