Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse zu wechseln.
'method': Eine nicht verwaltete Ereignisquellmethode muss "void" oder einen integralen Typ zurückgeben.
Bemerkungen
Sie haben eine Methode in der Ereignisquelle definiert, die keine Leere oder einen integralen Typ zurückgegeben hat. Um diesen Fehler zu beheben, müssen Sie festlegen, dass das Ereignis und der Ereignishandler über einen Rückgabetyp void oder einen integralen Typ verfügen, z int . B. oder long.
Example
Im folgenden Beispiel wird C3711 generiert:
// C3711.cpp
#include <atlbase.h>
#include <atlcom.h>
#include <atlctl.h>
[event_source(native)]
class CEventSrc {
public:
__event float event1(); // C3711
// try the following line instead
// __event int event1();
// also change the handler, below
};
[event_receiver(native)]
class CEventRec {
public:
float handler1() { // change float to int
return 0.0; // change 0.0 to 0
}
void HookEvents(CEventSrc* pSrc) {
__hook(CEventSrc::event1, pSrc, CEventRec::handler1);
}
void UnhookEvents(CEventSrc* pSrc) {
__unhook(CEventSrc::event1, pSrc, CEventRec::handler1);
}
};
int main() {
}