Partilhar via


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