三层继承的虚函数的简单问题
本帖最后由 pkmd 于 2013-06-16 23:39:20 编辑
|-- Car
|
Vehicle----|-- Bike - ChildBike
|
|-- Boat
如上所示,从Vehicle类继承下来Car、Bike、Boat等几个类。 从Bike类又派生出ChildBike类。基类Vehicle里有虚函数Draw()。
Bike类的函数Draw()画出了自行车;
ChildBike类的函数Draw()想先重用其基类Bike的Draw()函数,然后再增加几句语句画儿童自行车后轮两侧的小轮,
那么, ChildBike的函数Draw()该具体咋写?
ChildBike::Draw()
{
Bike::Draw();??
//////开始画ChildBike特有的零件/////////
****
}
[解决办法]
虚函数实现不一定和类体系的其它类有联系,你想怎么实现就怎么实现,比如,一个action虚函数,
飞机的action是在天空飞,而轮船的action是在水中行,两者可以没有任何关联,当然,如果基类提供了可以供其使用的方法,你也可以调用,这样可以减少一些代码,你将其看作是一个普通函数就可以
[解决办法]
对,就是先调用Bike::Draw(),再加特有的东西。。
[解决办法]
完全正确, 很标准的做法.