Chinaunix首页 | 论坛 | 博客
  • 博客访问: 5179853
  • 博文数量: 1696
  • 博客积分: 10870
  • 博客等级: 上将
  • 技术积分: 18357
  • 用 户 组: 普通用户
  • 注册时间: 2007-03-30 15:16
文章分类
文章存档

2017年(1)

2016年(1)

2015年(1)

2013年(1)

2012年(43)

2011年(17)

2010年(828)

2009年(568)

2008年(185)

2007年(51)

分类: C/C++

2008-04-15 11:35:05

一直不太理解回函数的作用,下面是找到的一些关于回函数的作用的解答。

1.函数是一个很有用,也很重要的概念。当生某种事件,系或其他函数将会自动调用你定的一段函数。

2.函数就相当于一个中断理函数,由系在符合你定的条件动调用。此,你需要做三件事:1,声明;2,定3置触条件,就是在你的函数中把你的回函数名称地址作一个参数,以便于系统调用。

3.函数就是按照一定的形式由你定实现内容,当生某种事件,而由系或其它函数来用的函数。使用回函数实际上就是在用某个函数,将自己写的一个函数的地址作参数传递给那个函数。而那个函数在需要的候,也就是某种事情生的候,利用传递的函数地址用回函数,这时你可以利用个机会在回函数中理消息或完成一定的操作。回函数只能是全局函数,或者是静函数,因为这个函数只是在中使用,所以维护类的完整性,我的静函数来做回函数。

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

 

(1)什么是回函数?
而言之,回函数就是一个通函数指针调用的函数。如果你把函数的指(地址)作参数传递给另一个函数,当个指被用为调用它所指向的函数,我说这是回函数。

 

(2)什么要使用回函数?
可以把用者与被用者分开。用者不关心是被用者,所有它需知道的,只是存在一个具有某种特定原型、某些限制条件(如返回值为int)的被用函数。
  如果想知道回函数在实际中有什么作用,先假这样一种情况,我写一个,它提供了某些排序算法的实现,如冒泡排序、快速排序、shell排序、 shake排序等等,但使更加通用,不想在函数中嵌入排序逻辑,而使用者来实现逻辑;或者,想让库可用于多种数据型(intfloat string),此怎么呢?可以使用函数指,并行回
  回可用于通知机制,例如,有要在程序中置一个计时器,每到一定时间,程序会得到相的通知,但通知机制的实现的程序一无所知。而此,就需有一个特定原型的函数指,用个指行回,来通知我程序事件已经发生。实际上,SetTimer( )API使用了一个回函数来通知计时器,而且,万一没有提供回函数,它会把一个消息往程序的消息列。
  另一个使用回机制的API函数是EnumWindow(),它枚屏幕上所有的顶层窗口,每个窗口用一个程序提供的函数,传递窗口的理程序。如果被用者返回一个,就继续进行迭代,否,退出。EnumWindow()并不关心被用者在何,也不关心被用者用它传递理程序做了什么,它只关心返回,因基于返回,它将继续执行或退出。
  不管怎么,回函数是继续C言的,因而,在C++中,只在与C建立接口,或与已有的回接口打交道,才使用回函数。除了上述情况,在C++使用虚方法或函数符(functor),而不是回函数。

 

阅读(939) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~