Aviso do Compilador (nível 1) C4488
'function' : requer a palavra-chave 'keyword' para implementar o método de interface 'interface_method'
Uma classe deve implementar todos os membros de uma interface da qual ela herda diretamente. Um membro implementado deve ter acessibilidade pública e deve ser marcado como virtual.
Exemplos
C4488 pode ocorrer se um membro implementado não for público. A amostra a seguir gera 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() {}
};
C4488 pode ocorrer se um membro implementado não estiver marcado como virtual. A amostra a seguir gera 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