C++问题:class manager:virtual public employee 这里这个virtual是什么意思,

来源:学生作业帮助网 编辑:作业帮 时间:2024/08/18 03:04:47
C++问题:class manager:virtual public employee 这里这个virtual是什么意思,
xSkK`+~W{_%SFM`YC]++$ NϼɿЙ&FBe\y|];r#(zL9a3NH$O"\FHe=ּDzJ)$] ҳ/p^v>G64Y՛}(E>*8p79r'tRf& 9g #˷r 2N9擎$C3T؆# -T9Sdq c!iUJŅSV<ڨ\l1S ؍I=ã5Zah.!rJӘ>Gr`5p>%/2Nwͷ2~$ݤuuF8[|P~:zP~gbA?

C++问题:class manager:virtual public employee 这里这个virtual是什么意思,
C++问题:class manager:virtual public employee
这里这个virtual是什么意思,

C++问题:class manager:virtual public employee 这里这个virtual是什么意思,
意思是使得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处获得)