Erreur du compilateur C3712
'method' : une méthode de gestionnaire d’événements doit retourner le même type que la source 'method'
Vous avez défini une méthode de gestionnaire d’événements qui n’a pas retourné le même type que la méthode d’événement source. Pour corriger cette erreur, donnez au gestionnaire d’événements le même type de retour que celui de la méthode d’événement source.
L’exemple suivant génère l’erreur C3712 :
// C3712.cpp
// compile with: /c
[event_source(native)]
class CEventSrc {
public:
__event void event1();
};
[event_receiver(native)]
class CEventRec {
public:
int handler1() { return 0; }
// try the following line instead
// void handler1() {}
void HookEvents(CEventSrc* pSrc) {
__hook(&CEventSrc::event1, pSrc, &CEventRec::handler1); // C3712
}
void UnhookEvents(CEventSrc* pSrc) {
__unhook(&CEventSrc::event1, pSrc, &CEventRec::handler1); // C3712
}
};