美文网首页
多重继承 和 虚基类

多重继承 和 虚基类

作者: Hao_38b9 | 来源:发表于2020-04-23 13:44 被阅读0次

    多重继承下的派生类型

    定义形式:

    class 派生类名:继承方式 基类名1,继承方式 基类名2{};

    构造函数

    • 根据继承顺序,对基类调用基类的构造函数
      • tips: 此时调用顺序,与初始化表的顺序无关

    析构函数

    析构函数的调用顺序刚好与构造函数相反。

    多重继承的二义性

    • 子类继承的多个父类中,具有多个相同名字的成员,通过子类调用时,会产生变异错误。
    • 子类继承的父类,几个父类又是从超父类中继承的,这样子类,会多次继承超父类的成员
    • 解决犯法:
      • 通过作用域运算符指定调用哪个父类的成员
      • 采用虚拟继承的方式

    虚基类和虚拟继承

    方式: class 派生类名:virtual 继承方式 基类名{}

    作用: 将基类声明为虚基类,在类的继承关系中,只被继承一次,可以消除多重继承的二义性。

    构造函数

    相关文章

      网友评论

          本文标题:多重继承 和 虚基类

          本文链接:https://www.haomeiwen.com/subject/betaihtx.html