虚继承

  1. 虚继承的目的是令某个类做出声明,承诺愿意共享他的基类;

  2. 继承列表中public等访问说明符和virtual的顺序随意;

  3. 在虚派生中,虚基类是由最低层的 派生类初始化的。

  4. 含有虚基类的对象的构造顺序与一般的顺序稍有不同:首先使用提供给最低层派生类构造函数的初始值初始化该对象的虚基类部分(调用虚基类的构造函数),接下来按照直接基类在派生列表中出现 次序依次对其初始化。虚基类总是先于非虚基类。

  5. 构造顺序:按照直接基类的声明顺序对其依次进行检查(包括直接基类的上层类),以确定其中是否含有虚基类。如果有就按照声明顺序先构造虚基类,然后按照顺序逐一构造其他非虚基类。

你可能感兴趣的:(虚继承)