Compartilhar via


Erro do compilador C2862

“interface”: uma interface só pode ter membros públicos

Membros protegidos e particulares podem ser acessados somente de outras funções de membro. Esses membros não são usados em uma interface, pois ela pode não fornecer implementações para nenhum de seus membros.

O exemplo a seguir gerará o erro C2862:

// C2862.cpp
// compile with: /c
#include <unknwn.h>

[object, uuid="60719E20-EF37-11D1-978D-0000F805D73B"]
__interface IMyInterface {
   HRESULT mf1(void);   // OK
protected:
   HRESULT mf2(int *b);   // C2862
private:
   HRESULT mf3(int *c);   // C2862
};