C++多继承的二义性
多承继可以看作是单承继的扩展。 派生类C具有两个基类(类A和类B), 因此, 派生类C的成员包含了基类A, B中成员以及该类本身的成员。
多承继的构造函数
在多承继的情况下, 派生类的构造函数格式如下:
其中, <总参数表>中各个参数包含了其后的各个分参数表。 它必须同时担任该派生类所有基类构造函数的调用。 同时, 派生类的参数个数必须包含完成所有基类初始化所需的参数个数。 再执行派生类本身构造函数, 也就是说, 执行基类构造函数的顺序取决于定义派生类时基类的顺序。
下面经过一个例子来说明派生类构造函数的构成及其执行顺序。 作用域运算符::用于处置作用域抵触的问题。 这种用法应该学会。