C++问题:class manager:virtual public employee

问题描述:

C++问题:class manager:virtual public employee
这里这个virtual是什么意思,
1个回答 分类:综合 2014-12-04

问题解答:

我来补答
意思是使得employee类成为manager的虚基类.
这种技术一般用在多重继承中,虚基类使得从多个类(它们的基类相同)派生出的对象只继承一个基类对象.
假如这样:
class worker{};
class singer:virtual public worker{};
class waiter:virtual public worker{};
class singerwaiter:public singer,public waiter{};
最后的singerwaiter只会有一份worker数据的拷贝,
如果
class singer:virtual public worker{};
class waiter:virtual public worker{};
改成这样
class singer:public worker{};
class waiter:public worker{};
singerwaiter就会有两份worker的拷贝(分别从singer和waiter处获得)
 
 
展开全文阅读
剩余:2000
下一页:明矾净水