c++远征之继承篇——多重继承,多继承,虚继承,多继承时的重复定义解决方法

以下内容源于慕课网的学习整理,如有侵权,请告知删除。


1、多重继承

(1)概念理解

c++远征之继承篇——多重继承,多继承,虚继承,多继承时的重复定义解决方法



2、多继承

(1)概念理解

c++远征之继承篇——多重继承,多继承,虚继承,多继承时的重复定义解决方法



3、虚继承

(1)问题的引出:多重继承和多继承的结合,造成数据的冗余。

c++远征之继承篇——多重继承,多继承,虚继承,多继承时的重复定义解决方法   c++远征之继承篇——多重继承,多继承,虚继承,多继承时的重复定义解决方法


(2)解决方案是,虚继承,此时类D中只会有一份类A的数据


(3)虚继承,只要在继承的类前,写上关键字virtual即可。

c++远征之继承篇——多重继承,多继承,虚继承,多继承时的重复定义解决方法


c++远征之继承篇——多重继承,多继承,虚继承,多继承时的重复定义解决方法


4、多继承时的重复定义解决方法

c++远征之继承篇——多重继承,多继承,虚继承,多继承时的重复定义解决方法