我遇到了一行代码如下:
typedef Foo* (*CREATE_BAR)(uint32_t);
这究竟是如何工作的?这段代码中发生了什么?
答案 0 :(得分:3)
这是一个名为uint32_t
的函数指针类型,它接受Foo*
参数并返回{{1}}。它可以保存指向任何此类函数的指针。
答案 1 :(得分:2)
它是一个返回Foo*
函数的指针的类型,并且取uint32_t
在c ++ 11中,它将是
using CREATE_BAR = Foo* (*)(uint32_t);