Erreur du compilateur C2862
'interface' : une interface ne peut avoir que des membres publics
Les membres protégés et privés sont accessibles uniquement à partir d’autres fonctions membres. Ces membres ne sont pas utilisés dans une interface, car il peut ne pas fournir d’implémentations pour ses membres.
L’exemple suivant génère l’erreur 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
};