编译器警告(等级 1)C4266
更新:2007 年 11 月
错误消息
“function”: 没有对基“type”中的虚拟成员函数可用的重写;函数被隐藏
派生类未重写虚函数的所有重载。
默认情况下关闭此警告。 有关更多信息,请参见Compiler Warnings That Are Off by Default。
下面的示例生成 C4266:
// C4266.cpp
// compile with: /W4 /c
#pragma warning (default : 4266)
class Engine {
public:
virtual void OnException(int&,int);
virtual void OnException(int&,int&,int);
};
class LocalBinding : private Engine {
virtual void OnException(int&,int);
}; // C4266
可能的解决方法:
// C4266b.cpp
// compile with: /W4 /c
#pragma warning (default : 4266)
class Engine {
public:
virtual void OnException(int&,int);
virtual void OnException(int&,int&,int);
};
class LocalBinding : private Engine {
virtual void OnException(int&,int);
virtual void OnException(int&, int&, int);
};