`
liuzhifu123
  • 浏览: 34897 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

回调函数

 
阅读更多

计算机程序设计中,回调函数,或简称回调,是指通过函数参数传递到其它代码的,某一块可执行代码引用。这一设计允许了底层代码调用在高层定义的子程序

回调的用途十分广泛。例如,假设有一个函数,其功能为读取配置文件并由文件内容设置对应的选项。若这些选项由散列值所标记,则让这个函数接受一个回调会使得程序设计更加灵活:函数的调用者可以使用所希望的散列算法,该算法由一个将选项名转变为散列值的回调函数实现;因此,回调允许函数调用者在运行时调整原始函数的行为。

回调的另一种用途在于处理信号或者类似物。例如一个POSIX程序可能在收到SIGTERM信号时不愿立即终止;为了保证一切运行良好,该程序可以将清理函数注册为SIGTERM信号对应的回调。

回调的形式因程序设计语言的不同而不同。

  • Objective-C中允许利用@selector关键字传递SEL类型的函数名。在实现中,SEL类型被定义为函数名字符串。
  • Apple或是LLVM的C语言扩展中,包含称为的语言特性,可以作为函数的参数传递,作为回调的一种实现。
  • C++允许对象提供其自己的函数调用操作的实现,即重载opertor()。标准模板库和函数指针一样接受这类对象(称为函数对象)作为各种算法的参数。
分享到:
评论

相关推荐

    回调函数回调函数回调函数

    回调函数 回调函数 回调函数 回调函数 回调函数 回调函数

    C语言中的回调函数实例

    在C语言中一般用typedef来为回调函数定义别名(参数名)。 别名通过宏定义typedef来实现,不是简单的宏替换。可以用作同时声明指针型的多个对象。 比如: 代码如下:char *pa,pb;//pa是一个char型指针,但pb是一个...

    回调函数被连续执行两次或多次的原因

    回调函数被连续执行两次或多次的原因: 根本原因:回调函数的事件预订【+=】语句被执行了两次或多次。 实例:移动web页的代码页类MobileDefault的Page_Init事件过程,包含的InitializeComponent()连续出现了两次...

    BCB线程中调用主界面的回调函数

    网上的回调函数都是API例子,学习函数指针倒是不错,可是很难让初学者立即应用。常见的情况是辅线程完成某事件后需要“通知”主界面,比如常见的进度条——线程中完成一定的进度后即通知主界面显示到一定的刻度。本...

    C# 实现回调函数

    C# 实现回调函数C# 实现回调函数C# 实现回调函数C# 实现回调函数C# 实现回调函数

    C++中回调函数(CallBack)的用法分析

    本文实例分析了C++中回调函数(CallBack)的用法。分享给大家供大家参考。具体分析如下: 如果试图直接使用C++的成员函数作为回调函数将发生错误,甚至编译就不能通过。 其错误是普通的C++成员函数都隐含了一个传递...

    ribbon回调函数大全资料.xlsx

    ribbon回调函数大全资料

    mfc下实现回调函数

    程序实现了在mfc下如何定义一个回调函数,如何使用回调函数,以及如何把类指针传递递给用户回调函数的例程。

    CC++中回调函数初探

    对于很多初学者来说,往往觉得回调函数很神秘,很想知道回调函数的工作原理。本文将要解释什么是回调函数、它们有什么好处、为什么要使用它们等等问题,在开始之前,假设你已经熟知了函数指针。    什么是回调...

    详解C#委托,事件与回调函数

    详解 C# 委托、事件与回调函数 委托是 C# 中一种非常重要的概念,它可以将方法作为参数传递给其他方法,也可以将方法作为返回值返回给其他方法。委托的定义是:delegate 返回类型 委托名(参数列表);例如:...

    matlab串口收发及回调函数编程

    matlab创建com对象。并采用中断方式响应回调函数,功能完整,包括创建初始化及关闭销毁。回调函数的格式,实现方法。

    Opengl事件及回调函数

    Opengl中的事件及事件循环,回调函数的介绍,包括鼠标回调函数和键盘回调函数

    怎么往SetTimer的回调函数传递参数

    Windows 消息处理机制与 SetTimer 回调函数参数传递 在 Windows 编程中,消息处理机制是了解 Windows 操作系统的关键。Windows 是一种消息驱动的系统,它会将用户的输入、鼠标点击、键盘输入等事件转换为消息,然后...

    使用C语言写的回调函数

    一个使用C语言写的回调函数 包括函数的调用,函数的取消等操作。

    java 回调函数 实现

    java 回调函数 自己模拟实现 使用了接口来完成

    delphi 回调函数示例

    delphi 回调函数示例,有分直接下。

    动态库回调函数示例

    基于 VC++6.0 实现的动态库回调函数示例

    如何让类的成员函数作为回调函数

    如何让类的成员函数作为回调函数 回调函数大家都懂得 需要了解下

    STM32定时回调函数

    STM32定时回调函数

    c++builder回调函数例子

    在动态库中调用主程序中的回调函数 用Builder写的

Global site tag (gtag.js) - Google Analytics