虚函数析构函数调用顺序
Posted wrencai
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了虚函数析构函数调用顺序相关的知识,希望对你有一定的参考价值。
析构函数参考:
http://blog.csdn.net/zengchen__acmer/article/details/22592195?utm_source=tuicool
构造函数参考:
http://www.cnblogs.com/nliao/archive/2012/02/05/2339175.html
C++构造函数调用顺序:
1、创建派生类的对象,基类的构造函数函数优先被调用(也优先于派生类里的成员类,多继承时,按照派生表的顺序依次调用);
2、如果类里面有成员类,成员类的构造函数优先被调用(按照声明的顺序调用);
3、派生类构造函数。
C++析构函数主要遵从一下四点规则:
1、首先调用派生类的析构函数(清理派生类的新增成员);
2、如果派生类中有子对象 , 则再调用派生类中子对象的析构函数 , 调用顺序是:在派生类中,先定义后调用。(清理派生类新增的成员对象);
3、再调用普通基类的析构函数(清理从基类继承来的新增成员);
4、最后调用虚基类的析构函数。
以上是关于虚函数析构函数调用顺序的主要内容,如果未能解决你的问题,请参考以下文章