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);
}