形状类族的中的纯虚函数
/*
* 程序的版权和版本声明部分:
* Copyright (c) 2013, 烟台大学计算机学院
* All rights reserved.
* 文件名称:test.cpp
* 作 者:任子仪
* 完成日期:2014年 5月 27日
* 版 本 号:v12.1
* 输入描述:无
* 问题描述:。
* 程序输出:
* 问题分析:略
* 算法设计:略
*/
#include<iostream>
#include<iomanip>
using namespace std;
class Shape
{
public:
virtual double area()=0;
};
class Circle:public Shape
{
protected:
float r;
public:
Circle(float rr):r(rr) {}
double area()
{
return r*r*3.14;
}
};
class Rectangle:public Shape
{
protected:
float b;
float a;
public:
Rectangle(float bb,float aa):b(bb),a(aa) {}
double area()
{
return b*a;
}
};
class Triangle:public Shape
{
protected:
float w;
float h;
public:
Triangle(float ww,float hh):w(ww),h(hh) {}
double area()
{
return w*h/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; //输出总面积
return 0;
}
示例图片:
形状类族的中的纯虚函数相关推荐
- 第十三周项目三-形状类族中的纯虚函数
/* *Copyright(c)2016,烟台大学计算机与控制工程学院 *All rights reserved *文件名称:123.cpp *作 者:王蕊 *完成日期:2016年6月1日 *版 本 ...
- c++ 中 virtual / 纯虚函数(析构函数)测试
为什么80%的码农都做不了架构师?>>> #include <iostream> #include <string>using namespace st ...
- C++中为什么要引入抽象基类和纯虚函数?
为什么要引入抽象基类和纯虚函数? 主要目的是为了实现一种接口的效果. 抽象类是一种特殊的类,它是为了抽象和设计的目的为建立的,它处于继承层次结构的较上层. ⑴抽象类的定义:带有纯虚函数的类为抽象类. ...
- 类的垂直关系中,如何把握纯虚函数
下面看看一个跟虚函数相关的几个名词: 抽象类: 含有纯虚函数的类,称作抽象类. 抽象类是不能实例化的,就是不能定义抽象类的对象,但是可以定义抽象类的指针变量. 抽象类往往是对问题领域进行分析和设计以后 ...
- C++中的各种“虚“-- 虚函数、纯虚函数、虚继承、虚基类、虚析构、纯虚析构、抽象类讲解
C++中的各种"虚" 1. 菱形继承 1.1 虚继承 && 虚基类 1.2 虚基类指针(vbptr)&& 虚基类表(vbtable) 2. 多态 2 ...
- c++中的虚特性(虚基类、虚函数、纯虚函数)
1. 虚基类 1.1 虚基类作用 为了解决多继承时的命名冲突和冗余数据问题,使得派生类中只保留一份间接基类的成员. 其本质是是让某个类做出声明,承诺愿意共享它的基类.其中,这个被共享的基类就称为虚基类 ...
- C++ 在继承中虚函数、纯虚函数、普通函数,三者的区别
C++ 在继承中虚函数.纯虚函数.普通函数,三者的区别 1.虚函数(impure virtual) C++的虚函数主要作用是"运行时多态",父类中提供虚函数的实现,为子类提供默认的 ...
- C++中的虚函数与纯虚函数
文章目录 1 C++中的虚函数 1.1 虚函数 1.2 单个类的虚函数表 1.3 使用继承的虚函数表 1.4 多重继承的虚函数表 2 C++中的纯虚函数 1 C++中的虚函数 1.1 虚函数 虚函数的 ...
- C++之抽象基类与纯虚函数
// Vitual_Base.cpp : Defines the entry point for the console application. //抽象基类与纯虚函数#include " ...
最新文章
- c 对一个mysql数据库进行操作_用C语言操作MySQL数据库
- gps数据处理matlab,基于Matlab的数据处理方法在GPS高程拟合中的应用
- win10输入法简体繁体切换
- 牛客多校5 - Graph(字典树+分治求最小生成树)
- 专访涯海:阿里云中间件是如何支撑双11的?
- memcache两种客户端比较
- powerbi python词云图_使用Power BI制作可爱的词云图
- Spring学习总结(32)—— 宣布 Spring Native Beta 版!
- 配置eclipse编写html/js/css/jsp/java时自动提示
- mysql执行计划中 性能最好_MySQL性能优化-explain执行计划
- 您应该购买卡巴斯基安全产品吗
- Single Radio Voice Call Continuity (SRVCC)
- 阿里云上的ssh反向代理
- Android 点九图机制讲解及在聊天气泡中的应用
- 阿里云发布首台云电脑“无影”,传统 PC 已“末路”?
- 安卓 高德SDK 将当前坐标居地图中心
- 【Linux】IRQ
- matlab兼职可以做什么的,我开始做兼职了
- 利用sqlmap进行文件读写
- 电子合同帮助HR,提高人事文件签署效率
热门文章
- 用流程图来描述一个App的启动功能
- Cesium基础教程
- python脚本备份Cisco Firepower 2130
- python接入讯代理_scrapy添加讯代理 动态转发(Python3)
- 倍福--连接欧姆龙EtherCAT伺服案例
- JVM面试经典(BAT必面)
- picpick尺子像素大小精度不够准确_关于图片尺寸、输出尺寸和分辨率之间的关系,你真的理解吗?...
- OpenCV-python:SVM(支持向量机)OCR手写识别
- IC 笔试真题之吾见——华为实习(1)
- php分页实例,php分页代码简单实现教程