C++要点(五)-多重继承和虚继承

来源:互联网 发布:mysql添加外键约束 编辑:程序博客网 时间:2024/06/01 10:16

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.无论虚基类出现在继承层次中的任何地方, 总是在构造非虚基类之前构造虚基类。

原创粉丝点击