Compilerfehler C3367
'static_member_function': Eine statische Funktion kann nicht zum Erstellen eines ungebundenen Delegaten verwendet werden.
Wenn Sie einen ungebundenen Delegaten aufrufen, müssen Sie eine Instanz eines Objekts übergeben. Da eine statische Memberfunktion über den Klassennamen aufgerufen wird, können Sie nur einen ungebundenen Delegaten mit einer Instanzmemberfunktion instanziieren.
Weitere Informationen zu ungebundenen Delegaten finden Sie unter How to: Define and Use Delegates (C++/CLI).For more information about unbound delegates, see How to: Define and Use Delegates (C++/CLI).For more information about unbound delegates, see How to: Define and Use Delegates (C++/CLI).
Beispiel
Im folgenden Beispiel wird C3367 generiert:
// 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
}