面试题答案
一键面试- 调用顺序:
- 首先调用
Base
构造函数。 - 然后调用
Member
构造函数。 - 最后调用
Derived
构造函数。
- 首先调用
- 原因:
- 基类的成员是派生类对象的一部分,在派生类对象构造之前,必须先构造基类部分,所以先调用
Base
构造函数。 - 对于类中的成员对象,会在进入本类构造函数体之前按照声明顺序进行构造,所以
Member
构造函数在Base
构造函数之后,Derived
构造函数体执行之前调用。 - 最后执行
Derived
构造函数体,完成派生类对象的构造。
- 基类的成员是派生类对象的一部分,在派生类对象构造之前,必须先构造基类部分,所以先调用