3个回答
展开全部
全错。
派生类不必再声明成虚函数了,只要基类声明就可以,基类声明虚函数后,会建一张虚函数表。
一旦一个函数被声明为虚函数,从该点之后的继承层次结构中都是虚函数,不管它在有没有再次声明是不是虚函数,有些程序员为了提高程序的清晰度,在继承结构中喜欢再次明确的声明这些虚函数.
至于“判定覆盖的依据是两者都是虚函数,发生在派生类与基类之间。”只是解释了什么是覆盖,派生类将基类中的虚函数重写即为覆盖。
扩展资料:
class A的成员函数print()已经成了虚函数,那么class B的print()成了虚函数,回答是Yes,我们只需在把基类的成员函数设为virtual,其派生类的相应的函数也会自动变为虚函数。所以,class B的print()也成了虚函数。
那么对于在派生类的相应函数前是否需要用virtual关键字修饰,那就是你自己的问题了(语法上可加可不加,不加的话编译器会自动加上,但为了阅读方便和规范性,建议加上)。
参考资料来源:百度百科-虚函数
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询