刚刚学习了委托的内容,先来说一下自己对委托的理解,权当是复习吧:委托可以定义在类里面,也可以定义在类外面,如果定义在类里面就只能被这个类调用,不论声明它是public 还是private。如果定义在类外面就能被所有类调用。如果程序是多线程的,委托方法希望能在UI层调用,那么可以在命名空间下定义。//...
分类:
其他好文 时间:
2014-11-08 23:29:37
阅读次数:
249
概述 在讲解多播委托的迭代之前,先讲一下,在委托调用的一连贯方法中,若有其中一个方法带有异常的情况: 1)实现方法的类: 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.....
分类:
其他好文 时间:
2014-10-30 14:58:51
阅读次数:
168
一个委托类型实列不仅可以绑定一个方法,其实可以实现多个方法的绑定,即多播委托,或委托链。如下:namespace 多播委托{//定义具有反回值无参数的委托类型变量 public delegate int weito(); class Program { static void Main(...
分类:
其他好文 时间:
2014-10-14 20:44:19
阅读次数:
194
一、多播委托前文提到的委托只是在一个委托类型中存储了一个方法(函数),实际上一个委托变量可以同时绑定多个方法,这些委托形成了一个委托链,每一个委托(实际上是方法)都顺序指向下一个委托,这个委托链就是多播委托。每一个绑定的方法就像是订阅者一样,等着发布者的消息,而触发委托变量的那个就像是发布者,将出发...
分类:
其他好文 时间:
2014-10-05 19:12:08
阅读次数:
174
在"委托、Lambda表达式、事件系列01,委托是什么,委托的基本用法,委托的Method和Target属性"中,反编译委托,发现委托都是多播委托。 既然委托是多播委托,我们可以通过"+="把多个方法赋给委托变量,这样就形成了一个委托链, 它是怎样形成的?来看下面的例子:namespace Cons...
分类:
其他好文 时间:
2014-10-01 18:54:41
阅读次数:
231
定义一个委托public delegate void CalculateDelegate(int 32 x,int 32 y);定义一个委托类型的变量public static CalculateDelegate mydelegate;定义一个方法和委托绑定,注意定义的方法和委托的参数要统一publ...
分类:
其他好文 时间:
2014-09-19 15:26:15
阅读次数:
133
周六学习的时间。继续学习委托,多线程。1.简单委托的定义delegate int MyDel(int a,int b);MyDel myDel = new MyDel(Add); //Add方法必须和委托MyDel有相同的参数和返回值myDel+=Add2 //多播委托2.匿名函数MyDel del...
分类:
编程语言 时间:
2014-09-13 21:19:35
阅读次数:
200
============================================多播委托-------------------------------------主程序usingSystem;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Text;
usingSystem.Threading.Tasks;
namespaceConsoleApplication3
{
classProgram
{
stati..
分类:
其他好文 时间:
2014-08-08 02:10:55
阅读次数:
272