第十三周项目56-形状类族中的纯虚函数
2016-05-23 19:58
204 查看
问题及代码:
/* *Copyright (c) 2015,烟台大学计算机学院 *All rights reserved. *文件名称:text.cpp *作者:徐健 *完成日期:2015年23日 *版本号:v1.0 * *问题描述: 写一个程序,定义抽象基类Shape 由它派生出3个派生类,Circle(圆形)、Rectangle(矩形)、 Triangle(三角形)。用如下的main()函数,求出定义的几个几何体的面积和。 *输入描述: 无 *程序输出: 几种几何体的面积和 */ #include <iostream> using namespace std; //定义抽象基类 class Shape { public: virtual double area()=0; private : }; class Circle:public Shape { public: Circle(double r):r(r){} double area() { return 3.14*r*r; } private : double r;//半径 }; class Rectangle:public Shape { public: Rectangle(double x,double y):length(x),width(y){} double area() { return length*width; } private : double length; double width; }; class Triangle:public Shape { public: Triangle(double x,double y):buttom(x),high(y){} double area() { return 0.5*buttom*high; } private : double buttom; double high; }; int main() { Circle c1(12.6),c2(4.9); Rectangle r1(4.5,8.4),r2(5.0,2.5); Triangle t1(4.5,8.4),t2(3.4,2.8); Shape*pt[6]={&c1,&c2,&r1,&r2,&t1,&t2}; double areas=0.0; for(int i=0;i<6;i++) { areas=areas+pt[i]->area(); } cout<<"totol of all areas="<<areas<<endl; return 0; }运行结果:
相关文章推荐
- Git远程仓库
- jquery ajax学习之路
- Java - 蓝桥杯 - 历届试题 买不到的数目(扩展欧几里得)
- JVM--类文件结构
- spark介绍
- Linux C函数strtok解析
- C++中的struct与class继承方式
- hdu1664 放苹果(经典简单dfs)
- 如何快速又正确地在C++里实现锁
- JGP是如何工作的
- {题解}[jzoj3391]【NOIP2013模拟】穿越七色虹
- gpio信号过冲问题
- comet 应用
- Linux - ps指令詳解
- fzu 2109 Mountain Number 数位DP
- 2016华工杯羽毛球联赛小记
- 阅读程序(4)
- 【SHELL】监控Nginx运行,Mysql主从运行,主从复制延迟
- JSON的解析[Java-JSON、FastJSON、GSON]
- 第十三周项目55-动物这样叫