宏定义函数typedef int(*lpAddFun)(int, int);有什么好处?

来源:百度知道 编辑:UC知道 时间:2024/07/08 16:05:07
lpAddFun是个函数指针,返回值为int,参数为(int,int)。
能否用内联函数改写一下,或者用其他自定义的方式改写?宏定义函数有什么好处?
能否换一种写法,去掉typedef变为int(*lpAddFun)(int, int);为什么不行?我理解的typedef一般用法为typedef a b这种类型,这个怎么只有typedef a,不知道我表达清楚了没?

这不是宏... 这是类型定义

函数指针类型写起来都很长 所以一般会定义一个类型为了写着方便而已...

--

单纯是函数类型就是这么写。类型定义语句就是变量声明语句前面加上一个typedef。

int(*lpAddFun)(int, int); 这样就是声明一个函数指针变量。前面加typedef就是定义函数指针类型。

这个不是宏定义,没有 #define
也不是函数,也不定义函数
int lpAddFun(int, int);
才是函数

typedef int(*lpAddFun)(int, int);
的意思是声明一种用户类型,用这个类型可以再来声明函数,或作为函数的参数类型,可这样用:

void function(lpAddFun fYousFunction);