Дано:
typedef type-declaration synonym;
Я вижу, как:
typedef long unsigned int size_t;
объявляет size_t
как синоним long unsigned int
, однако я (знаю, что он делает это) не может точно определить, как:
typedef int (*F)(size_t, size_t);
объявляет F
как синоним pointer to function (size_t, size_t) returning int
typedef два операнда (type-declaration, synonym)
в первом примере: long unsigned int
и size_t
.
Каковы два аргумента typedef в объявлении F
или могут быть перегруженные версии typedef?
Если существует соответствующее различие между C и С++, пожалуйста, уточните, что в первую очередь меня интересует С++, если это помогает.