下一行是什么意思?
void(*fnctn)(void(*)(int *,void **),int(*)(void**,int*));
最佳答案
您实际上拥有一个函数指针“fnctn”,它的两个参数采用两个函数指针。如果我们一点一点地分解它,您将得到以下内容:
第一个参数void(*)(int*, void**)
是一个函数指针,返回 void 并采用 int* 和 void** 作为它的两个参数。
第二个参数int(*)(void**, int*)
是一个函数指针,返回一个int值,以void**和int*为两个参数。
也许看下面更清楚:
typedef void(*param1)(int *, void**);
typedef int(*param2)(void**, int*);
typedef void(*fnctn)(param1, param2);
关于c++ - 有人可以解释一下吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4810911/