C++中构造函数调用顺序

来源:互联网 发布:淘宝强制订单险类目 编辑:程序博客网 时间:2024/06/04 19:32

C++中若某类a从基类b、虚基类c派生而来,且该类中具有对象成员d,则在构造该类的对象时执行构造函数的顺序?

构造一个类的对象的一般顺序是:class a:public b, virtual public c{};1.如果该类有直接或间接虚基类,先执行虚基类的构造函数;2.如果该类有其他基类,按照他们在继承声明列表中出现的顺序分别执行构造函数,但是不再执行它们的虚基类的构造函数。3.按照在类定义中出现的顺序,对派生类中新增的成员对象进行初始化。4.执行构造函数函数体。所以本题构造函数执行顺序为:c,b,d,a;
0 0