由多继承和多重继承引发的一些问题? 看一个例子:
在这个例子中,即有多继承,又有多重继承,类D继承于类B和类C,而类B和类C都继承于类A,
这就导致类D中会存在两份类A,这是不允许的,那么就得通过今天的虚继承来解决这个问题。
虚继承用法如下所示:
1 class Person {
2
3 };
4
5 class Worker :
virtual public Person {
6
7 };
8
9 class Farmer :
virtual public Person {
10
11 };
12
13 class MigrantWorker :
public Worker,
public Farmer {
14
15 };
那么使用MigrantWorker这个类去实例化一个对象,那么这个对象当中只含有一份Person的数据。
参考: 《慕课网》
转载于:https://www.cnblogs.com/tao-shao/p/7043863.html
相关资源:数据结构—成绩单生成器