編譯器警告 (層級 1) C4374
'function1': 非虛擬方法 'function2' 將不會實作介面方法
編譯程式預期會在方法定義上尋找 虛擬 關鍵詞。
下列範例會產生 C4374:
// C4374.cpp
// compile with: /clr /W1 /c /WX
public interface class I {
void f();
};
public ref struct B {
void f() {
System::Console::WriteLine("B::f()");
}
};
public ref struct C {
virtual void f() {
System::Console::WriteLine("C::f()");
}
};
public ref struct D : B, I {}; // C4374
public ref struct E : C, I {}; // OK