typedef long (*GuiFunc) (int, int, int, unsigned short*, long, long);
请帮我理解上面的代码行
typedef long (*GuiFunc) (int, int, int, unsigned short*, long, long);
请帮我理解上面的代码行
您定义了一个类型GuiFunc
,它是指向函数(括号中的内容)的指针(即(*GuiFunc)
构造),该函数接受 3 ints
、指向 、 的指针unsigned short
,longs
并返回 long。
你在这里定义一个新类型。
这里的新类型是函数指针。
函数指针有 6 个输入参数
typedef long (*GuiFunc) (int, int, int, unsigned short*, long, long);
定义新类型GuiFunc
.that 可以声明一个带有 6 个参数的函数指针int, int, int, unsigned short*, long, long
和returns long
.
假设你有这样的功能
long foo(int, int, int, unsigned short*, long, long)
{
}
如果你声明
Guifunc callback; //declare a varaible of type Guifunc
callback=foo;
然后你可以像这样调用 foo 函数long x=callback(6parameters);