十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
一、简介
创新互联是专业的白碱滩网站建设公司,白碱滩接单;提供做网站、网站设计,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行白碱滩网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
本文主要介绍C++中如何使用回调函数。
二、回调函数介绍
回调函数主要在“回”字,和正常的函数调用方式不太一样。正常的函数由开发者自己定义返回类型以及传入的参数,并且也是由开发者自己调用,而回调函数功能其实也是由开发者自己实现,但是返回类型以及入参则由注册回调的函数来决定(若是自己编写则可以自定义注册函数,由他人提供则只能根据接口实现),而且调用方也不是开发者,而是注册方决定。
整个过程也就是一个“回”字,开发者将自己的函数指针交给对方,这是“去”,而对方则在适当的时候调用这个函数,也可以将一些开发者需要的数据传回来,这便是来回了。
总而言之,正常情况是开发者调用API,调用权在开发者手中,而回调函数则相当于API调用开发者提供的函数,主被动转换了。
三、回调函数用处
那么,回调函数的用处是什么呢?既然发明了回调函数,自然是有其用武之地了。
如果你对上面的解释比较理解的话,你就会发现回调函数真的用的很多,比如事件,其底层就是回调函数,比如最简单的UI窗口鼠标点击事件,是否是由开发者编写函数具体实现,而调用的时机是由UI框架决定呢?不过很多开发者可能由于框架封装的十分简单易用,所以没有察觉到。
四、回调函数示例
了解了概念后,我们自然是要学习如何自己实现回调函数的注册了。本文以C++为例。
void sample(void (*callback)())