编译器警告 C4485
“override_function”:匹配 ref 基类方法“base_class_function”,但没有标记为“new”或“override”;假定为“new”(和“virtual”)
访问器替代具有或不带 virtual
关键字的基类访问器函数,但 override
或 new
说明符不是重写函数签名的一部分。 添加 new
或 override
说明符以解决此警告。
有关详细信息,请参阅 override 和 new(vtable 中的新槽)。
始终发出 C4485 错误。 使用 warning pragma 来禁止 C4485。
示例
以下示例生成 C4485
// C4485.cpp
// compile with: /clr
delegate void Del();
ref struct A {
virtual event Del ^E;
};
ref struct B : A {
virtual event Del ^E; // C4485
};
ref struct C : B {
virtual event Del ^E {
void raise() override {}
void add(Del ^) override {}
void remove(Del^) override {}
}
};