委托学习笔记

来源:互联网 发布:linux的串口调试工具 编辑:程序博客网 时间:2024/05/24 05:08

1、申明委托

delegate void Mydel(int x);

2、创建委托对象

1)使用new运算符的对象创建表达式

MyDel delVar;

delVar = new Mydel(myInstObject.MyM1); //使用实例方法

dVar = new Mydel(SClass.MyM1);  //使用静太方法

2) 使用快捷语法

delVar = myInstObject.MyM1; //使用实例方法

dVar = SClass.MyM1;  //使用静太方法

3)创建变量是时初始化对象

MyDel delVar = new Mydel(myInstObject.MyM1); //使用实例方法

MyDel dVar = new Mydel(SClass.MyM1);  //使用静太方法

3、赋值委托

由于委托是引用类型, 我们可以通过给它赋值来改变包含在委托变量中的引用。

MyDel delVar;

delVar = myInstObject.MyM1; //使用实例方法

delVar = SClass.MyM1;  // 此时delVar的值被修改

4、组合委托

MyDel delA = myInstObject.MyM1; 

MyDel delB = SClass.MyM1;  

MyDel delC =  delA+delB;

5、为委托增加方法

6、为委托移除方法

7、调用带返回值的委托

如果委托有返回值并且在调用列表中有一个以上的方法,会发生下面的情况:

  1. 调用列表中最后一个方法返回的值就是委托调用返回的值。
  2. 调用列表中其他方法的返回值都会被忽略。
8、调用带引用参数的委托
如果委托有引用参数,参数值会根据调用列表中的一个或多个方法的返回值而改变。


0 0
原创粉丝点击