Sono confuso sul significato di void *function()
.
È un puntatore a funzione o una funzione che ritorna void*
? L'ho sempre usato su strutture di dati come una funzione ricorsiva che restituisce un puntatore, ma quando ho visto un codice in multithreading ( pthread
) c'è una stessa dichiarazione di funzione. Ora sono confuso qual è la differenza tra loro.
void *function()
è una funzione che accetta un numero arbitrario di argomenti e restituisce un valore che, se non definito, è di tipo nullo . In C ++, void* function()
è una funzione che non accetta argomenti e restituisce un valore di pointer-to-void . Dovresti decidere quale lingua stai chiedendo.
void *
. Dopo tutto, anche se tu potessi, cosa faresti con un void
?
void*function();
sintatticamente è corretto. Ad esempio per Python hanno scelto una decisione diversa: il formato fa parte della sintassi. IMHO, entrambi i modi hanno i suoi pro e contro.