编译器错误 C2553

“base_function”:替代虚函数返回类型不同于“override_function”

派生类中的函数试图替代基类中的虚函数,但派生类函数的返回类型与基类函数不同。 替代函数签名必须与被替代的函数的签名匹配。

以下示例生成 C2553:

// C2553.cpp
// compile with: /clr /c
ref struct C {
   virtual void f();
};

ref struct D : C {
   virtual int f() override ;   // C2553

   // try the following line instead
   // virtual void f() override;
};