C++学习 多重继承

来源:互联网 发布:昆明郊野公园知乎 编辑:程序博客网 时间:2024/06/07 06:51

多重继承:允许一个类有多于一个直接父类 

class Son:public Father1,public Father2()

遇到的问题:

一个子类沿不同的路径继承同一个父类,容易出现二义性的问题 


如何避免多重继承引起的混淆:
    域作用算子:default::one来指明来自哪个父类
    虚基类(常用):两个或多个对象由一个基类派生时,在派生时可以把基类声明为虚基类来防止在派生类对象中提供多份基类副本,在基类被继承时在其前面加上关键字:virtural
class Son:virtual public Father()


多个直接父类的继承顺序
1.虚拟父类,若有多个虚拟父类,按继承说明顺序从左至右
2.非虚拟父类,若有多个非虚拟父类,按继承说明顺序从左至右



原创粉丝点击