13周任务三:派生类
来源:互联网 发布:js中如何实现继承 编辑:程序博客网 时间:2024/05/21 01:54
/* (程序头部注释开始)* 程序的版权和版本声明部分* Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved.* 文件名称: * 作 者: 田庆 * 完成日期: 2012 年 5 月 14 日* 版 本 号: * 对任务及求解方法的描述部分* 输入描述: * 问题描述: 定义抽象基类Shape,由它派生出3个派生类,Circle(圆形)、Rectangle(矩形)、Triangle(三角形)。* 程序输出: * 程序头部的注释结束*/#include<iostream>using namespace std;class Shape{public:virtual float area() const=0;};class Circle:public Shape{public:Circle(float radius){this->radius = radius;}virtual float area() const; protected:float radius;};float Circle::area() const{return(3.14*radius*radius);}class Rectangle:public Shape{public:Rectangle(float length,float width){this->length = length;this->width = width;}virtual float area() const;protected:float length;float width;};float Rectangle::area() const{return(length*width);}class Triangle:public Shape{public:Triangle(float length,float heigth){this->length = length;this->heigth = heigth;} virtual float area() const;protected:float length;float heigth;};float Triangle::area() const{return(length*heigth/2);}int main(){Circle c1(12.6),c2(4.9); //建立Circle类对象c1,c2,参数为圆半径Rectangle r1(4.5,8.4),r2(5.0,2.5); //建立Rectangle类对象r1,r2,参数为矩形长、宽Triangle t1(4.5,8.4),t2(3.4,2.8); //建立Triangle类对象t1,t2,参数为三角形底边长与高Shape *pt[6]={&c1,&c2,&r1,&r2,&t1,&t2}; //定义基类指针数组pt,各元素指向一个派生类对象double areas=0.0; //areas为总面积for(int i=0; i<6; i++){areas=areas+pt[i]->area();}cout<<"totol of all areas="<<areas<<endl; //输出总面积system("pause");return 0;}
运行结果为:
totol of all areas=647.858
请按任意键继续. . .
- 13周任务三:派生类
- 第十周任务三:派生类的派生
- 第十周任务三 多重继承派生类
- 第十周实验报告(任务三)【派生类2】
- 第十周任务三之点类及多重派生
- 《第十周任务三》建立point类,以此为基类,派生出圆类和椭圆类
- 第十周 任务三 3-1 先声明点类,在派生出圆类 圆柱类
- 第十三周 任务三 设计一个抽象基类,生出三个派生类
- 第十三周任务三(义抽象基类Shape,由它派生出3个派生类,Circle(圆形)、Rectangle(矩形)、Triangle(三角形))
- 第十三周【任务三】【任务3】写一个程序,定义抽象基类Shape,由它派生出3个派生类,Circle(圆形)、Rectangle(矩形)、Triangle(三角形)。
- 第13周-任务3-抽象基类Shape及派生类Circle、Rectangle和Triangle
- 第13周-任务4-抽象类CSolid及派生类CCube、CBall、CCylinder
- C++第十周【任务3】类的继承和派生
- 第十周任务2:学会使用派生类
- 第十周任务三(多重派生的构造函数定义)
- 第13周任务3(定义抽象基类Shape,由它派生出3个派生类,Circle(圆形)、Rectangle(矩形)、Triangle(三角形))
- 《第十三周任务三》写一个程序,定义抽象基类Shape,由它派生出3个派生类,Circle(圆形)、Rectangle(矩形)、Triangle(三角形)。用如下的mian()函数,求出定义的几个几何体
- 第十周任务二:单程派生
- jsonp支持post提交吗?
- 环形缓冲区
- 第十二周实验报告2
- 著作权法规定的职务作品的著作权归属原则
- .NET使用swfupload实现图片批量上传
- 13周任务三:派生类
- 第十三周实验报告(1)
- DX打印XtraGrid
- 第十三周实验报告4
- Js操作Select大全
- x86系统引导(1)
- uboot 移到开发板主要命令
- Preview of BI 2012 with Speaker Dan Kearnan: Expect SAP NetWeaver BW to Run Soon on SAP HANA
- 这才叫视网膜显示:无线光伏视网膜移植有重大突破