/*
* 程序的版权和版本声明部分:
* 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;
}

示例图片:

形状类族的中的纯虚函数相关推荐

  1. 第十三周项目三-形状类族中的纯虚函数

    /* *Copyright(c)2016,烟台大学计算机与控制工程学院 *All rights reserved *文件名称:123.cpp *作 者:王蕊 *完成日期:2016年6月1日 *版 本 ...

  2. c++ 中 virtual / 纯虚函数(析构函数)测试

    为什么80%的码农都做不了架构师?>>>    #include <iostream> #include <string>using namespace st ...

  3. C++中为什么要引入抽象基类和纯虚函数?

    为什么要引入抽象基类和纯虚函数? 主要目的是为了实现一种接口的效果. 抽象类是一种特殊的类,它是为了抽象和设计的目的为建立的,它处于继承层次结构的较上层. ⑴抽象类的定义:带有纯虚函数的类为抽象类. ...

  4. 类的垂直关系中,如何把握纯虚函数

    下面看看一个跟虚函数相关的几个名词: 抽象类: 含有纯虚函数的类,称作抽象类. 抽象类是不能实例化的,就是不能定义抽象类的对象,但是可以定义抽象类的指针变量. 抽象类往往是对问题领域进行分析和设计以后 ...

  5. C++中的各种“虚“-- 虚函数、纯虚函数、虚继承、虚基类、虚析构、纯虚析构、抽象类讲解

    C++中的各种"虚" 1. 菱形继承 1.1 虚继承 && 虚基类 1.2 虚基类指针(vbptr)&& 虚基类表(vbtable) 2. 多态 2 ...

  6. c++中的虚特性(虚基类、虚函数、纯虚函数)

    1. 虚基类 1.1 虚基类作用 为了解决多继承时的命名冲突和冗余数据问题,使得派生类中只保留一份间接基类的成员. 其本质是是让某个类做出声明,承诺愿意共享它的基类.其中,这个被共享的基类就称为虚基类 ...

  7. C++ 在继承中虚函数、纯虚函数、普通函数,三者的区别

    C++ 在继承中虚函数.纯虚函数.普通函数,三者的区别 1.虚函数(impure virtual) C++的虚函数主要作用是"运行时多态",父类中提供虚函数的实现,为子类提供默认的 ...

  8. C++中的虚函数与纯虚函数

    文章目录 1 C++中的虚函数 1.1 虚函数 1.2 单个类的虚函数表 1.3 使用继承的虚函数表 1.4 多重继承的虚函数表 2 C++中的纯虚函数 1 C++中的虚函数 1.1 虚函数 虚函数的 ...

  9. C++之抽象基类与纯虚函数

    // Vitual_Base.cpp : Defines the entry point for the console application. //抽象基类与纯虚函数#include " ...

最新文章

  1. c 对一个mysql数据库进行操作_用C语言操作MySQL数据库
  2. gps数据处理matlab,基于Matlab的数据处理方法在GPS高程拟合中的应用
  3. win10输入法简体繁体切换
  4. 牛客多校5 - Graph(字典树+分治求最小生成树)
  5. 专访涯海:阿里云中间件是如何支撑双11的?
  6. memcache两种客户端比较
  7. powerbi python词云图_使用Power BI制作可爱的词云图
  8. Spring学习总结(32)—— 宣布 Spring Native Beta 版!
  9. 配置eclipse编写html/js/css/jsp/java时自动提示
  10. mysql执行计划中 性能最好_MySQL性能优化-explain执行计划
  11. 您应该购买卡巴斯基安全产品吗
  12. Single Radio Voice Call Continuity (SRVCC)
  13. 阿里云上的ssh反向代理
  14. Android 点九图机制讲解及在聊天气泡中的应用
  15. 阿里云发布首台云电脑“无影”,传统 PC 已“末路”?
  16. 安卓 高德SDK 将当前坐标居地图中心
  17. 【Linux】IRQ
  18. matlab兼职可以做什么的,我开始做兼职了
  19. 利用sqlmap进行文件读写
  20. 电子合同帮助HR,提高人事文件签署效率

热门文章

  1. 用流程图来描述一个App的启动功能
  2. Cesium基础教程
  3. python脚本备份Cisco Firepower 2130
  4. python接入讯代理_scrapy添加讯代理 动态转发(Python3)
  5. 倍福--连接欧姆龙EtherCAT伺服案例
  6. JVM面试经典(BAT必面)
  7. picpick尺子像素大小精度不够准确_关于图片尺寸、输出尺寸和分辨率之间的关系,你真的理解吗?...
  8. OpenCV-python:SVM(支持向量机)OCR手写识别
  9. IC 笔试真题之吾见——华为实习(1)
  10. php分页实例,php分页代码简单实现教程