标签:containe clear span only include 对象 类对象 des 继承
参考:http://www.weixueyuan.net/view/6365.html
总结:
构造函数的执行顺序是按照继承顺序自顶向下的,从基类到派生类,而析构函数的执行顺序是按照继承顺序自下向上,从派生类到基类。
#include <iostream> using namespace std; class A { public: A(){cout<<"A constructor"<<endl;} ~A(){cout<<"A destructor"<<endl;} }; class B: public A { public: B(){cout<<"B constructor"<<endl;} ~B(){cout<<"B destructor"<<endl;} }; class C: public B { public: C(){cout<<"C constructor"<<endl;} ~C(){cout<<"C destructor"<<endl;} }; int main() { C test; return 0; }
在本例中定义了三个类,C类继承自B类,B类继承自A类。在每个类中定义默认构造函数和析构函数。在主函数中我们定义了C类的一个对象,创建对象时各个类的构造函数会被调用,之后退出程序,各类的析构函数会被逐一调用。程序运行结果如下:
标签:containe clear span only include 对象 类对象 des 继承
原文地址:http://www.cnblogs.com/yongpan/p/7631858.html