父类使用虚函数是为了让子类重写,那子类重写的时候也需要带virtual关键字吗?比如:
class Base{
virtual bool init();
};
class Derived{
virtual bool init(); //这里的vitual是必须的吗?好像不用也能编译通过呃…..
};
c++规定,当一个成员函数被声明为虚函数后,其派生类中的同名函数都自动成为虚函数。因此,在子类从新声明该虚函数时,可以加,也可以不加,但习惯上每一层声明函数时都加virtual,使程序更加清晰。
本文解释了C++中父类使用虚函数的目的及其如何影响子类。特别指出,一旦一个函数在基类中声明为虚函数,其派生类中的同名函数将自动成为虚函数。文中还讨论了在子类中重写虚函数时是否需要再次声明virtual关键字的问题。

2166

被折叠的 条评论
为什么被折叠?



