回调函数 钩子函数 有什么区别


http://zhidao.baidu.com/link?url=yz-1_MaYpcw_-ZxIuAGZ4wmf1keRr2qJiyj-TU-g70E2qTCKqSqduAWyElBNQhj-ZE1HEh3DL2TtcdR1DRfbLnTinn9yl6n4UBQ6ViIRfr3


所谓回调函数,一般就是把函数的地址作为参数传进去,让调用的函数在内部可以调用这个函数。
例子:
void CALLBACK fun(){...} 这是一个函数,回调函数
void AAA(int a, Fun* p); 这是一个普通函数,但第二个参数是fun
AAA(5, fun);  

钩子函数,严格算起来,也算是回调函数的一种。但钩子函数是针对的截取的,当你使用了钩子之后,每当触发到相对应的消息,系统就会先“执行你写的回调函数”。
即原本是:系统-->目标函数
使用钩子就变成:系统-->你写的回调函数-->目标函数

你可能感兴趣的:(软件架构设计,概念)