다음을 통해 공유


컴파일러 오류 C3723

'function': 이벤트를 확인할 수 없습니다.

function 호출할 이벤트를 확인할 수 없습니다.

다음 샘플에서는 C3723을 생성합니다.

// C3723.cpp
struct A {
   // To resolve, comment void f(int); and uncomment the __event function
   void f(int);
   // __event void f(int);
   void f(float);

};

struct B {
   void g(int);
   B(A* a) {
   __hook(&A::f, a, &B::g);   // C3723
   }
};

int main() {
}

__hook 프로그래밍과 __unhook /clr 호환되지 않습니다. 대신 += 및 -= 연산자를 사용합니다.

다음 샘플에서는 C3723을 생성합니다.

// C3723b.cpp
// compile with: /clr
using namespace System;

public delegate void delegate1();

public ref class CPSource {
public:
   event delegate1^ event1;
};

public ref class CReceiver {
public:
   void Handler1() {
   }

   void UnhookAll(CPSource^ pSrc) {
      __unhook(&CPSource::event1, pSrc, &CReceiver::Handler1); // C3723
      // Try the following line instead.
      // pSrc->event1 -= gcnew delegate1(this, &CReceiver::Handler1);
   }
};

int main() {
}