为什么80%的码农都做不了架构师?>>>   

#include <iostream>
#include <string>using namespace std;class Base
{public:Base() {}public:virtual void print() {cout << "Base::print()" << endl;}void bb() {cout << "Base::bb()" << endl;}virtual ~Base() = 0;
};Base::~Base()
{cout << "Base::~Base()" << endl;
}class Derived : public Base
{public:Derived() {}public:virtual void print() {cout << "Derived::print()" << endl;}void bb() {cout << "Derived::bb()" << endl;}public:~Derived();
};Derived::~Derived()
{cout << "Derived::~Derived()" << endl;
}int main(int argc, char *argv[])
{Base *b = new Derived;b->print();b->Base::print();delete b;b = NULL;Derived dd, *pd = NULL;b = &dd;b->bb();pd = &dd;pd->bb(); return 0;
}

编译输出:

Derived::print()
Base::print()
Derived::~Derived()
Base::~Base()
Base::bb()
Derived::bb()
Derived::~Derived()
Base::~Base()

转载于:https://my.oschina.net/tsh/blog/1510079

c++ 中 virtual / 纯虚函数(析构函数)测试相关推荐

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

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

  2. C++中virtual(虚函数)的用法

    在面向对象的C++语言中,虚函数(virtual function)是一个非常重要的概念. 什么是虚函数: 虚函数是指一个类中你希望重载的成员函数 ,当你用一个  基类指针或引用   指向一个继承类对 ...

  3. 形状类族的中的纯虚函数

    /* * 程序的版权和版本声明部分: * Copyright (c) 2013, 烟台大学计算机学院 * All rights reserved. * 文件名称:test.cpp * 作 者:任子仪 ...

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

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

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

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

  6. c++纯虚函数在父类中调用的规避

    构造和析构函数不允许调用纯虚函数,可以先调用虚函数,里面再调用纯虚函数实现. class Base{ public:     virtual void foo()=0;     Base() { ca ...

  7. C++中的抽象类及纯虚函数的实现与否

    1.含有纯虚函数的叫抽象类 2.抽象类(一般是基类)中的纯虚函数无论函数体实现与否,都没有关系,系统会自动忽略 3.继承自抽象类的子类,必须要实现父类的纯虚函数才可以实例化对象 4.抽象类不允许实例化 ...

  8. 静态联编,动态联编,类指针之间的关系,虚函数与多态性,纯虚函数,虚析构函数

    1.静态联编,是程序的匹配,连接在编译阶段实现,也称为早期匹配.重载函数使用静态联编. 2.动态联编是指程序联编推迟到运行时进行,所以又称为晚期联编.switch语句和if语句是动态联编的例子. #i ...

  9. 问题十五:C++中抽象类,虚函数是什么鬼?怎么测试

    该篇内容提要: 1,理论解释,来自网上: 2,测试两个子类对父类虚函数的实现. 15.1 抽象类.虚函数是什么鬼? http://www.cnblogs.com/dongsheng/p/3343939 ...

最新文章

  1. 86年后,终于有人完成「真人版」薛定谔的猫实验,量子纠缠了活体动物
  2. WPF wpf scrollviewer 触屏滚动 窗体弹跳
  3. linux应用程序开发数据,《嵌入式linux应用程序开发详解》核心笔记
  4. boost::program_options模块实现处理选项组的测试程序
  5. docker 安装镜像失败_docker(mips 64)安装中文字符集失败
  6. python中利用pygame模块输出文字
  7. C++开发工程师进阶路线
  8. 如何设置程序默认“以管理员身份运行”
  9. How fast is a C++ extension by the PHP-CPP liberary?
  10. Python 调用 kafka 构建完整实例分析与应用
  11. 直流屏电源模块GF22007-2高频充电模块R22007
  12. DoIP节点连接状态管理
  13. When Color Constancy Goes Wrong:Correcting Improperly White-Balanced Images阅读札记
  14. 连接到系统上的设备没有发挥作用解决方案
  15. SQL学习笔记:服务端配置-如何使用企业管理器
  16. 普通计算机电缆,计算机电缆和普通电缆有什么区别吗?
  17. 一篇3分文章的水稻转录组分析实战
  18. ubutu16.04台式机没有声音处理方法
  19. 几何画板怎么画圆锥曲线,原来这么简单
  20. Excel或者WPS 报insatlling Office Customization 路径找不到的问题

热门文章

  1. tensoeflow 教程1、2
  2. Keras—ModelCheckpoint
  3. 车辆2D/3D--Deep MANTA: A Coarse-to-fine Many-Task Network for joint 2D and 3D vehicle analysis
  4. LeetCode 72. Edit Distance--动态规划--Levenshtein Distance Algorithm--Java,Python解法
  5. es写入数据的工作原理是什么啊?es查询数据的工作原理是什么啊?
  6. mysql悲观锁和乐观锁
  7. centos7-同步时间
  8. SpringBoot-400-Bad-Request(Request-header-is-too-large)
  9. 数据库物理文件 mysql_MYSQL数据库-物理文件
  10. iOS中定时器NSTimer的开启与关闭