Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
"metod": en händelsehanterarmetod måste ha samma anropskonvention som källans "metod"
Anmärkningar
Du har definierat en händelsehanterarmetod som inte använde samma anropskonvention som källhändelsemetoden. Åtgärda det här felet genom att ge händelsehanterarmetoden samma anropskonventioner som för källhändelsemetoden. I koden nedan, se till att anropskonventionerna av handler1 och event1 matcha (__cdecl eller __stdcall eller andra). Om du tar bort nyckelorden för anropskonventionen från båda deklarationerna, löser du också problemet och ställer in event1 och handler1 till thiscall anropskonventionen som standard. För mer information, se Samtalskonventioner.
Example
I följande exempel genereras C3714:
// C3714.cpp
// compile with: /c
// processor: x86
[event_source(native)]
class CEventSrc {
public:
__event void __cdecl event1();
// try the following line instead
// __event void __stdcall event1();
};
[event_receiver(native)]
class CEventRec {
public:
void __stdcall handler1() {}
void HookEvents(CEventSrc* pSrc) {
__hook(&CEventSrc::event1, pSrc, &CEventRec::handler1); // C3714
}
void UnhookEvents(CEventSrc* pSrc) {
__unhook(&CEventSrc::event1, pSrc, &CEventRec::handler1); // C3714
}
};