回调函数
回调函数就是一种利用函数指针进行函数调用的过程. 而那个函数在需要的时候,利用传递的地址调用回调函数,这时你可以利用这个机会在回调函数中处理消息或完成一定的操作。
应用程序提供给Windows系统DLL或其它DLL调用的函数,一般用于截获消息、获取系统信息或处理
异步事件。应用程序把回调函数的地址指针告诉DLL,而DLL在适当的时候会调用该函数。(一般为标
准WindowsAPI的调用方式---__stdcall)
注意:
I、 不能显式调用的函数,通过将回调函数的地址传给调用者从而实现调用。
II、 必须遵守事先规定好参数格式和传递方式,
III、函数(DLL编制者)和客户程序也必须遵守相同的调用约定。
V、 一般只有DLL中使用回调函数
关于定义函数指针的声明与函数声明。
void f();// 函数原型
void (*) ();//声明一个返回Void类型无参数函数指针。
unsigned psize = sizeof (void (*) ()); // 获得函数指针的大小
typedef void (*pfv) ();// 为函数指针声明类型定义
附关于C#实现回调函数(借用委托)