4.5 派生类构造函数和析构函数的执行顺序举例
2017-07-15 15:08
197 查看
/* p150 4.2.1 派生类构造函数和析构函数的执行顺序 通常情况下,当创建派生类对象时,首先执行基类的构造函数,随后再执行派生类的构 造函数;当撤销派生类对象时,则先执行派生类的析构函数,随后再执行基类的析构函数。 下列程序的运行结果,反映了派生类的构造函数和析构函数的执行顺序 */ // 4.5 派生类构造函数和析构函数的执行顺序举例。 #include<iostream> using namespace std; class Base{ public: Base(){ //基类构造函数 cout<<"Constructing base class -- 基类构造函数 \n"; } ~Base(){ //基类析构函数 cout<<"Destructing base class -- 基类析构函数 \n"; } }; class Derived:public Base{ public: Derived(){ //派生类构造函数 cout<<"Constructing derived class -- 派生类构造函数"<<endl; } ~Derived(){ //派生类析构函数 cout<<"Destructing derived class -- 派生类析构函数"<<endl; } }; int main(){ Derived obj; return 0; } /* 从程序运行的结果可以看出:构造函数的调用严格地按照先调用基类的构造函数,后 调用派生类的构造函数的顺序执行。析构函数的调用顺序与构造函数的调用顺序正好相 反,先调用派生类的析构函数,后调用基类的析构函数。 */
相关文章推荐
- 派生类的构造函数赋值和析构函数执行顺序
- 例4.8 含有对象成员的派生类构造函数和析构函数的执行顺序
- 基类和派生类的构造函数和析构函数执行顺序
- 派生类构造函数和析构函数的执行顺序
- 派生类构造函数和析构函数的执行顺序
- 关于基类和派生类的构造函数和析构函数的执行顺序问题
- 派生类构造函数和析构函数的执行顺序
- 关于基类和派生类的构造函数和析构函数的执行顺序问题
- C++学习笔记(6)----基类和派生类的构造函数和析构函数的执行顺序
- 构造函数与析构函数执行顺序及其与虚函数关系
- 派生类构造函数的执行顺序
- C++类对象在各种内存区的构造函数析构函数执行顺序
- C++中构造函数与析构函数执行顺序
- 【c++继承】继承关系中派生类对象构造函数和析构函数调用顺序
- C++在单继承、多继承、虚继承时,构造函数、复制构造函数、赋值操作符、析构函数的执行顺序和执行内容
- 基类派生类的构造函数和析构函数的执行顺序验证
- 基类和派生类构造函数函数执行顺序
- 多重继承-构造函数与析构函数执行顺序
- C#中基类和派生类的构造函数以及变量的执行顺序整理
- 浅谈C++对象模型——理解构造函数、析构函数执行顺序