Condividi tramite


Errore del compilatore C3712

'method': un metodo del gestore eventi deve restituire lo stesso tipo di 'method' di origine

È stato definito un metodo del gestore eventi che non ha restituito lo stesso tipo del metodo dell'evento di origine. Per correggere questo errore, assegnare al metodo del gestore eventi lo stesso tipo restituito del metodo dell'evento di origine.

L'esempio seguente genera l'errore 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
   }
};