Avviso del compilatore (livello 1) C4488
'function': richiede la parola chiave 'keyword' per implementare il metodo di interfaccia 'interface_method'
Una classe deve implementare tutti i membri di un'interfaccia da cui eredita direttamente. Un membro implementato deve avere accessibilità pubblica e deve essere contrassegnato come virtuale.
Esempi
C4488 può verificarsi se un membro implementato non è pubblico. L'esempio seguente genera l'errore C4488.
// C4488.cpp
// compile with: /clr /c /W1 /WX
interface struct MyI {
void f1();
};
// implemented member not public
ref class B : MyI { virtual void f1() {} }; // C4488
// OK
ref class C : MyI {
public:
virtual void f1() {}
};
L'errore C4488 può verificarsi se un membro implementato non è contrassegnato come virtuale. L'esempio seguente genera l'errore C4488.
// C4488_b.cpp
// compile with: /clr /c /W1 /WX
interface struct MyI {
void f1();
};
ref struct B : MyI { void f1() {} }; // C4488
ref struct C : MyI { virtual void f1() {} }; // OK