【发布时间】:2012-07-04 14:35:36
【问题描述】:
我遇到了两个使用函数指针的不同代码。
请告诉我哪个更好?有什么偏好吗?
typedef int myFunction(int a,int b);
extern myFunction *ptfunction;
和
typedef int (*ptfunction)(int a,int b);
【问题讨论】:
-
我会选择第一个,因为第二个无法编译。
-
这里我不太明白 typedef 的需要。不会简单地声明 int (*ptfunction)(int a,int b);实现和typedef一样?而且我认为简单的声明更清楚。 (如果你不需要它,编译器无论如何都会优化它......)
-
如果您编辑了原始帖子并添加了两个工作示例,将会很有帮助。
标签: c++ function-pointers typedef