Als «function-pointers» getaggte Fragen

Ein Funktionszeiger ist ein Zeiger auf eine Funktion, die in einer Variablen gespeichert werden kann. Es ermöglicht eine Laufzeitauswahl, welche Funktion ausgeführt werden soll.

1233
Wie funktionieren Funktionszeiger in C?

Ich hatte in letzter Zeit einige Erfahrungen mit Funktionszeigern in C. Ausgehend von der Tradition, Ihre eigenen Fragen zu beantworten, habe ich beschlossen, eine kleine Zusammenfassung der Grundlagen für diejenigen zu erstellen, die sich schnell mit dem Thema befassen

176
Rückruffunktionen in Java

Gibt es eine Möglichkeit, eine Rückruffunktion in einer Java-Methode zu übergeben? Das Verhalten, das ich nachahmen möchte, ist ein .NET-Delegat, der an eine Funktion übergeben wird. Ich habe Leute gesehen, die vorgeschlagen haben, ein separates Objekt zu erstellen, aber das scheint übertrieben,...

148
Funktionszeiger in Java

Dies mag allgemein und trivial sein, aber ich habe anscheinend Probleme, eine konkrete Antwort zu finden. In C # gibt es ein Konzept von Delegaten, das sich stark auf die Idee von Funktionszeigern aus C ++ bezieht. Gibt es eine ähnliche Funktionalität in Java? Was ist der beste Weg, da Zeiger etwas...

88
Funktionszeiger auf Elementfunktion

Ich möchte einen Funktionszeiger als Mitglied einer Klasse einrichten, die ein Zeiger auf eine andere Funktion in derselben Klasse ist. Die Gründe, warum ich das mache, sind kompliziert. In diesem Beispiel möchte ich, dass die Ausgabe "1" ist. class A { public: int f(); int (*x)(); } int A::f() {...

87
Casting eines Funktionszeigers auf einen anderen Typ

Angenommen, ich habe eine Funktion, die einen void (*)(void*)Funktionszeiger zur Verwendung als Rückruf akzeptiert : void do_stuff(void (*callback_fp)(void*), void* callback_arg); Nun, wenn ich eine Funktion wie diese habe: void my_callback_function(struct my_struct* arg); Kann ich das sicher...