Что означает «void * (*) (void *)» в C ++? - PullRequest
6 голосов
/ 21 февраля 2012

Это параметр в pthread_create().Я думаю, что каждая часть означает:

  • void *: возвращаемое значение - пустой указатель.

  • (*): это указатель нафункция.

  • (void *): принимает в качестве параметра нетипизированный указатель.

Это правильно?

1 Ответ

7 голосов
/ 21 февраля 2012

Да , это подпись указателя безымянной функции, которая принимает и возвращает void *.

Если бы оно имело имя (как в переменной), оно было бы:

void *(*myFuncName)(void*)
...