首页 新闻 会员 周边

C#中委托和事件的区别

0
悬赏园豆:40 [已解决问题] 解决于 2012-04-15 19:27

我看C#与.net4高级程序设计时遇到一个问题,上面说事件是为了节省委托的键入时间,貌似因为给委托添加和删除方法要费时间,但是好像委托和事件都可以使用+=机制,所以不太明白委托和事件到底有什么不一样(有可能是我看的不精),请帮忙给我讲解一下,最好说明一下什么时候用委托,什么时候用事件,我把委托和事件中的示例代码中的event全换成了new,运行结果好像没什么不一样,所以特别迷惑,3q

C#
微澜的主页 微澜 | 初学一级 | 园豆:-1
提问于:2012-04-12 19:39
< >
分享
最佳答案
1

关于委托和事件非常好的文章:C# 中的委托和事件

收获园豆:20
artwl | 专家六级 |园豆:16736 | 2012-04-12 19:58
其他回答(3)
0

http://blog.csdn.net/chopper7278/article/details/3145000
这个东西将的不错,看看吧。

收获园豆:20
rains | 园豆:860 (小虾三级) | 2012-04-12 20:13
0

事件相当于一个特殊的委托

慧☆星 | 园豆:5640 (大侠五级) | 2012-04-13 09:12
3

委托和事件没有可比性,因为委托是类型,事件是对象,因为对于事件来讲,外部只能“注册自己+=、注销自己-=”,外界不可以注销其他的注册者,外界不可以主动触发事件,因此如果用Delegate就没法进行上面的控制,因此诞生了事件这种语法。事件只能add、remove自己,不能赋值。事件只能+=、-=,不能=、不能外部触发事件。我写篇笔记你看看就明白了。

Halower | 园豆:1723 (小虾三级) | 2012-04-15 19:23
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册