A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 刘安成 中级黑马   /  2013-12-16 14:27  /  1245 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 刘安成 于 2013-12-16 18:23 编辑

什么是 委托与匿名委托 ? 有什么区别吗?都怎么用啊

评分

参与人数 1技术分 +1 收起 理由
陈福军 + 1

查看全部评分

1 个回复

倒序浏览
1、委托具有以下特点:

    委托类似于 C++ 函数指针,但它是类型安全的。

    委托允许将方法作为参数进行传递。

    委托可用于定义回调方法。什么是回掉

    委托可以链接在一起;例如,可以对一个事件调用多个方法。

    方法不需要与委托签名精确匹配。有关更多信息,请参见协变和逆变。

    C# 2.0 版引入了匿名方法的概念,此类方法允许将代码块作为参数传递,以代替单独定义的方法。

2、C#中定义事件委托可以分为三个步骤

定义委托

//声明委托

public delegate void MyDel();

实例化委托

//实例化委托,用一个方法进行实例化

//该方法签名要与委托签名一致

调用委托

//调用委托

Del();

总结:

  1.委托实际上就是将函数当做传参数来传递

  2.匿名委托与委托最大的区别就是能够访问当前上下文的变量,即使变量不在方法内部。

  3.事件其实也是一种委托。

  4.在委托中必须具有相同的方法签名,包括返回类型和参数。


评分

参与人数 1技术分 +1 收起 理由
陈福军 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马