Partager via


Erreur du compilateur C3708

'interface' : utilisation incorrecte de 'mot clé' ; doit être membre d’une source d’événement compatible

Remarques

Pour déclarer une interface en tant qu’événement, la déclaration d’événement doit se trouver dans une source d’événement.

Example

L’exemple suivant génère l’erreur C3708 :

// C3708.cpp
// compile with: /c
#define _ATL_ATTRIBUTES 1
#include "atlbase.h"
#include "atlcom.h"

[ module(name="MyLibrary")];

[ object, uuid("00000000-0000-0000-0000-000000000001") ]
__interface I {
   HRESULT func();
};

[ object, uuid("00000000-0000-0000-0000-000000000002") ]
__interface II {
   HRESULT func();
};

__event __interface I;   // C3708

// put the event in an event source
[ coclass, event_source(com), uuid("00000000-0000-0000-0000-000000000003") ]
struct E : II {
   __event __interface II;
};