使用“覆盖”关键字

问题描述

我的代码出现以下错误

错误 C3668:'B::getData':带有覆盖说明符 'override' 的方法没有覆盖任何基类方法

{{1}}

为什么会出现错误,我该如何解决??

解决方法

您在 A 中的原始函数必须是 virtual 才能overrided。

class A {
public:
    int a;

    virtual int getData() {
        return a;
    }
};

有关 override 的更多信息是 here。和相关:info on virtualfinal