一、继承 + 组合 模式的类对象 构造函数和析构函数调用规则
1、场景说明
如果一个类
既 继承了 基类 ,
又 在类中 维护了一个 其它类型 的 成员变量 ,
那么 该类 的 构造 与 析构 , 就需要涉及到...类 本身 的 构造函数 和 析构函数 ,
父类 的 构造函数 和 析构函数 ,
类 成员变量 的 构造函数 和 析构函数 ;
2、调用规则
在 继承 + 组合 的情况下 , 构造函数 与 析构函数 调用规则如下...:
构造函数 : 父类 -> 成员 -> 自身 ;
首先 , 调用 父类 构造函数 ;
然后 , 调用 成员 构造函数 ; 也就是 成员变量 类型的 构造函数 ;
最后 , 调用 自己 构造函数 ;...;
A 和 B 的构造函数 , 是 父类构造函数 ;
D 构造函数 , 是 成员构造函数 ;
C 构造函数 , 是 自身构造函数 ;
构造函数的调用顺序为 : 父类 -> 成员 -> 自身 , 符合上述的调用原则...;
然后分析 析构函数 调用顺序 ;
C 析构函数 , 是 自身构造函数 ;
D 析构函数 , 是 成员构造函数 ;
A 和 B 的析构函数 , 是 父类构造函数 ;
析构函数的调用顺序为 : 自身