【问题标题】:What's the difference between the Derived class override the base class's virtual function with or not with a "virtual" prefix? [duplicate]派生类使用或不使用“虚拟”前缀覆盖基类的虚函数有什么区别? [复制]
【发布时间】:2013-08-31 05:46:33
【问题描述】:
class A
{
    virtual void funcion()
    {
        //...
    }
}
class B:public A
{
     //1:virtual void function();
     //2:void function();
}

1 和 2 有什么区别?还是一样?

【问题讨论】:

    标签: c++


    【解决方案1】:

    它们完全一样。一旦在基类中声明了一个函数virtual,任何从它继承的类也将默认声明该函数virtual

    【讨论】:

      【解决方案2】:

      它们是一样的。在基类中声明的函数virtualvirtual,通过继承链。

      为了清楚起见,我发现添加 virtual 很有用(通常,这些类不在同一个文件中)。

      【讨论】:

        猜你喜欢
        • 2019-04-14
        • 2012-02-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-08-01
        • 2018-12-23
        • 1970-01-01
        • 2020-09-30
        相关资源
        最近更新 更多