Typedef C++,无法解析其含义

met*_*dos 3 c++ typedef

我在C++书中读到了这个typedef行,但我无法解析它的含义:

typedef Shape* (*CreateShapeCallBack)();
Run Code Online (Sandbox Code Playgroud)

现在,CreateShapeCallBack代表什么,任何想法?谢谢.

小智 8

它是指向函数的指针类型,该函数返回指向Shape的指针并且不带参数.你可以像这样使用它:

Shape * Func() {
   // do stuff - return Shape pointer
}

...
CreateShapeCallBack p = Func;
Run Code Online (Sandbox Code Playgroud)