Erreur du compilateur C3731
événement incompatible 'function1' et gestionnaire 'function2' ; la source d’événement et le gestionnaire d’événements doivent être du même type
La source d’événement et le récepteur d’événements doivent avoir le même type (par exemplenative
, les types). com
Pour corriger cette erreur, faites correspondre les types de la source d’événement et du gestionnaire d’événements.
L’exemple suivant génère l’erreur C3731 :
// C3731.cpp
// compile with: /clr
#using <mscorlib.dll>
[event_source(native)]
struct A {
__event void MyEvent();
};
[event_receiver(managed)]
// try the following line instead
// [event_receiver(native)]
struct B {
void func();
B(A a) {
__hook(&A::MyEvent, &a, &B::func); // C3731
}
};
int main() {
}