委托、事件和回调函数这3者之间到底是什么关系

转自:http://www.cnblogs.com/dongzhiquan/archive/2010/03/18/1994643.html

简而言之,回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用为调用它所指向的函数时,我们就说这是回调函数。
  为什么要使用回调函数?
    因为可以把调用者与被调用者分开。调用者不关心谁是被调用者,所有它需知道的,只是存在一个具有某种特定原型、某些限制条件(如返回值为int)的被调用函数。

    回调函数:就是指向指针的指针,保存的就一个地址,通常用在钩子过程,异步过程调用等等,因为是一个地址,不会携带任何其他的信息所以一般的回调函数不是类型安全的. 
    委托就一个类,他的每个实例就是对一个方法(定义好了返回值,输入参数类型,个数以及函数调用的约定)和其调用时操作的对象的一个封装. 
    c#中的事件是依靠委托来实现的,事件就是一种通知机制,当一件事情发生时(比如说状态改变)通知给相关的其他对象.

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值