本文共 380 字,大约阅读时间需要 1 分钟。
1.在多重继承中, 构造函数的初始化式只能控制用于初始化基类的值, 不能控制基类的构造次序。基类的构造次序按照基类构造函数在类派生列表中出现的次序调用, 如下:
class Dirve : public A, public B, public C
{
pulbic:
Dirve() : A(), C(), B(){}
};
则基类构造函数调用的次序是A, B, C 而不是初始化列表中的A, C, B
析构函数的调用次序正好相反, C, B, A
2.在多重继承中, 用基类的指针或引用只能访问基类中定义的成员, 而不能访问派生类新增加的成员, 而且这些基类没有隐含的关系, 不允许用一个基类的指针去访问其他基类的成员。
3.在虚继承中, 有最低层派生类的构造函数初始化虚基类。
4.无论虚基类出现在继承层次中的任何地方, 总是在构造非虚基类之前构造虚基类。
转载地址:http://afkqb.baihongyu.com/