Partager via


Erreur du compilateur C3367

'fonction_membre_statique' : impossible d’utiliser une fonction static pour créer un délégué indépendant

Quand vous appelez un délégué indépendant, vous devez passer une instance d’un objet. Dans la mesure où une fonction membre statique est appelée par le nom de classe, vous ne pouvez instancier un délégué indépendant qu’avec une fonction membre d’instance.

Pour plus d’informations sur les délégués non liés, consultez Guide pratique pour définir et utiliser des délégués (C++/CLI).

Exemple

L’exemple suivant génère l’erreur C3367.

// C3367.cpp
// compile with: /clr
ref struct R {
   void b() {}
   static void f() {}
};

delegate void Del(R^);

int main() {
   Del ^ a = gcnew Del(&R::b);   // OK
   Del ^ b = gcnew Del(&R::f);   // C3367
}