Ich bin verwirrt über die Bedeutung von void *function().
Ist es ein Zeiger auf eine Funktion oder eine Funktion, die zurückkehrt void*? Ich habe es immer für Datenstrukturen als rekursive Funktion verwendet, die einen Zeiger zurückgibt, aber als ich einen Code in multithreading ( pthread) sah, gab es dieselbe Funktionsdeklaration. Jetzt bin ich verwirrt, was der Unterschied zwischen ihnen ist.
void *function()ist dies eine Funktion, die eine beliebige Anzahl von Argumenten verwendet und einen Wert zurückgibt, der bei Dereferenzierung vom Typ void ist . In C ++ void* function()ist eine Funktion, die keine Argumente akzeptiert und den Wert pointer-to-void zurückgibt . Sie sollten sich entscheiden, nach welcher Sprache Sie fragen.
void * . Selbst wenn Sie könnten, was würden Sie mit einem machen void?
void*function();ist syntaktisch korrekt. Zum Beispiel haben sie für Python ein anderes Entscheidungsformat gewählt - das Format ist Teil der Syntax. IMHO haben beide Wege ihre Vor- und Nachteile.