黑马程序员技术交流社区

标题: 委托和事件 [打印本页]

作者: zou5268237    时间: 2014-3-27 18:00
标题: 委托和事件
本帖最后由 zou5268237 于 2014-3-27 21:24 编辑

c#中的委托是什么?事件是什么?他们之间又有什么关系?
作者: 许庭洲    时间: 2014-3-27 18:48
1.委托可以把一个方法作为参数代入另一个方法;
2.委托可以理解为指向一个函数的指针;
3.委托和事件没有可比性,因为委托是类型,事件是对象;
4.事件的内部是用委托实现的;
5.因为对于事件来讲,外部只能“注册自己+=,注销自己-=”,外界不可以注销其他的注册者,外界不可以主动触发事件,因此如果用Delegate就没法进行上面的控制,因此诞生了事件这种语法;
6.事件只能+=,-=,不能=。
7.事件是用来阉割委托实例的,类比用一个自定义类阉割List;
8.事件只能add,remove自己,不能赋值。


作者: ♠Akechi♠    时间: 2014-3-27 20:36
楼上正解,支持下,很详细了




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2