第十一周项目 3 立体类族共有的抽象类
来源:互联网 发布:怎样网络上发布小说 编辑:程序博客网 时间:2024/06/02 10:16
/* * Copyright (c) 2015, 烟台大学计算机学院 * All rights reserved. * 文件名称:main.cpp * 作 者 :韩娟 * 完成日期 :2015年6月17日 * 版 本 号 :v1.0 * * 问题描述 : 设计一个抽象类CSolid,含有用于求表面积及体积的两个纯虚函数。设计派生类CCube、CBall、CCylinder,分别表示正方体、球体及圆柱体。在main()函数中,定义CSolid *p;(p是指向基类的指针,且这个基类是个抽象类)。要求利用这个p指针,能够求出正方体、球体及圆柱体对象的表面积及体积。 * 输入描述 : 略 * 程序输出 :按要求输出 */#include <iostream>using namespace std;class CSolid{public: virtual double surfacearea() =0; virtual double volume() =0;};class CCube:public CSolid{private: double length;public: CCube(double len):length(len) {} double surfacearea() { double c; c=6*length*length; return c; } double volume() { double c; c=length*length*length; return c; }};class CBall:public CSolid{private: double radius;public: CBall(double r):radius(r){} double surfacearea() { double c; c=4*3.14*radius*radius; return c; } double volume() { double c; c=3.14*radius*radius*radius*4/3; return c; }};class CCylinder:public CSolid{private: double radius; double height;public: CCylinder(double r,double h):radius(r),height(h){} double surfacearea() { double c; c=2*3.14*radius*radius+2*3.14*radius*height; return c; } double volume() { double c; c=3.14*radius*radius*height; return c; }};int main( ){ CSolid *p; double s,v; CCube x(30); cout<<"立方体边长为 30 "<<endl; p=&x; s=p->surfacearea( ); v=p->volume( ); cout<<"表面积:"<<s<<endl; cout<<"体积:"<<v<<endl; cout<<endl; CBall y(4.5); cout<<"球体半径为 4.5 "<<endl; p=&y; s=p->surfacearea( ); v=p->volume( ); cout<<"表面积:"<<s<<endl; cout<<"体积:"<<v<<endl; cout<<endl; CCylinder z(10,20); cout<<"圆柱体底面半径、高分别为 10, 20"<<endl; p=&z; s=p->surfacearea( ); v=p->volume( ); cout<<"表面积:"<<s<<endl; cout<<"体积:"<<v<<endl; cout<<endl; return 0;}
知识点总结 :
和原来的很像,但是加入了指针可以多种指向很方便。
学习心得 :
指针棒棒的。
0 0
- 第十一周项目 3 立体类族共有的抽象类
- 第十一周项目四立体类族共有的抽象类
- 第十四周项目3-立体类族共有的抽象类
- 第十四周 【项目3-立体类族共有的抽象类】
- 第十四周项目3-立体类族共有的抽象类
- 第十四周——项目3 立体类族共有的抽象类
- 第十四周 项目3-立体类族共有的抽象类
- 项目3-立体类族共有的抽象类
- 第十四周上机实践项目——立体类族共有的抽象类
- 第十四周项目四立体类族共有的抽象类
- 第十四周(项目三)——立体类族共有的抽象类。
- 第十周项目3——立体类组共有的抽象类
- 项目四。立体类族共有的抽象类
- 项目三-立体类族共有的抽象类
- 项目40--立体类族共有的抽象类
- 第十三周项目:立体类族共有的抽象类
- 立体类族共有的抽象类
- 立体类族共有的抽象类
- Pentaho介绍_摘自百度百科
- SVN 错误中文对照
- Android解决内存溢出问题
- Android 内存溢出解决方案(OOM) 整理总结
- vvvo--test
- 第十一周项目 3 立体类族共有的抽象类
- hbase shell 常用命令
- 我——成为真实的自己
- 关于ad所用端口
- 6.17 阅读程序 理解seekg() tellg()的用法
- 欢迎使用CSDN-markdown编辑器
- 用二进制文件处理学生信息
- OpenCV的IplImage与我的CHYBitmap的互转
- 第十五周程序阅读三