c# 事件 +=和-=有什么区别。

process_xt.OutputDataReceived-=newDataReceivedEventHandler(encoder_OutputDataReceived... process_xt.OutputDataReceived -= new DataReceivedEventHandler(encoder_OutputDataReceived);
process_xt.OutputDataReceived += new DataReceivedEventHandler(encoder_OutputDataReceived);
下面定义encoder...的事件,+=和-=用法有什么不同
展开
 我来答
笨蛋程序员
推荐于2017-11-24 · TA获得超过140个赞
知道答主
回答量:37
采纳率:0%
帮助的人:0
展开全部
一个事件可以有很多的侦听者挂接在上面,这些侦听者通过注册自己的事件处理例程来告诉系统说,当这个事件发生的时候请调用我的xxx方法。
具体到你这里的代码,OutputDataReceived 就是一个事件,侦听者想要告诉系统说,当我收到outputdata的时候请你执行我的encoder_OutputDataReceived方法。 侦听者怎么样用程序的语言告诉系统呢,就是你这里写好的 += 语句了,
process_xt.OutputDataReceived += new DataReceivedEventHandler(encoder_OutputDataReceived);

那有一天,侦听者可能不感兴趣这个事件了, 那么他可以取消掉自己的注册。 用 -= 咯
process_xt.OutputDataReceived -= new DataReceivedEventHandler(encoder_OutputDataReceived);

希望能帮上你的忙~
仍灵松6g
2011-02-16 · TA获得超过142个赞
知道小有建树答主
回答量:122
采纳率:0%
帮助的人:140万
展开全部
+=就是发生这个事件的同时要通知你,-=就是发生这个事件不再来通知你了。

这就好比你在邮局订阅了一年的《中国青年》报纸,如果邮局有新的《中国青年》报纸,就会给你家的邮箱中投递一份新的《中国青年》报纸。如果到了一年,你没有订阅它,那么邮局就不会给你寄报纸了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
theperfact
2011-02-16 · 超过33用户采纳过TA的回答
知道答主
回答量:168
采纳率:0%
帮助的人:90万
展开全部
删除事件 添加事件
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式