Compartir a través de


Error del compilador C3374

no puede tomar la dirección de 'function' a menos que se cree la instancia de delegado

La dirección de una función se tomó en un contexto distinto de la creación de una instancia de delegado.

El código siguiente genera el error C3374:

// C3374.cpp
// compile with: /clr
public delegate void MyDel(int i);

ref class A {
public:
   void func1(int i) {
      System::Console::WriteLine("in func1 {0}", i);
   }
};

int main() {
   &A::func1;   // C3374

   // OK
   A ^ a = gcnew A;
   MyDel ^ StaticDelInst = gcnew MyDel(a, &A::func1);
}

Consulte también

Cómo: Definir y usar delegados (C++/CLI)