我在 Py++ 生成的 C++ 程序中有一个奇怪的 typedef 语句。
double radius(int); // function to be wrapped
typedef double (*radius_function_type)(int);
bp::def("radius", radius_function_type(&radius)); // bp::def is a function for wrapping
到目前为止,我发现上面的 typedef 语句不是我们大多数人都熟悉的类型,
typedef complex_type simple_alias;
相反,它是一种声明指向以 int 作为参数并返回 double (与原型相同)的函数的指针的方法。所以我现在的问题是,如何使用函数地址作为参数调用指向函数的指针(没有取消引用) ?这也与原型不匹配。有人请解释!