c++多继承

1.多继承二义性产生的原因:

子类同时继承多个基类,而这些基类又有一个共同的基类,则导致在子类对象中调用父类成员时,调用不明确;即:二义性。

2.虚继承能解决的而已情况:有共同老祖宗的能解决二义性,没有共同老祖宗的不能用虚继承解决二义性,只能显示调用。eg:C c1;c1.B1::k这样调用多继承父类的成员。

3.多继承中使用多继承会增加继承子类的占用空间,因为调用了虚函数表,故:增加了4个字节的空间。

猜你喜欢

转载自www.cnblogs.com/jefy/p/9417448.html