多播委托就是好几个方法全都委托给一个委托变量

  代码:

  1. namespace 委托
  2. {
  3. class Program
  4. {
  5. static void math1()
  6. {
  7. Console.WriteLine("这是第一个方法");
  8. }
  9.  
  10. static void math2()
  11. {
  12. Console.WriteLine("这是第二个方法");
  13. }
  14.  
  15. static void Main(string[] args)
  16. {
  17.  
  18. //多播委托
  19. Action vae = math1;
  20. vae += math2;
  21. Delegate [] deleg = vae.GetInvocationList(); //把vae这个委托里面的方法全部给一个委托数组
  22. foreach (Delegate item in deleg)
  23. {
  24. item.DynamicInvoke(); //通过遍历语句,把这些方法再一个个的实现
  25. }
  26.  
  27. Console.ReadKey();
  28. }
  29. }
  30.  
  31. }

  匿名方法本质上还是一个方法,只是它没有名字,任何使用委托变量的地方都可以使用匿名方法赋值

  代码:

  

  1. namespace 委托
  2. {
  3. class Program
  4. {
  5. //匿名方法,委托方法体结束需要加分号
  6.  
  7. Func<int, int> vae = delegate(int i) //这是Func
  8. {
  9. return i;
  10. };
  11. Console.WriteLine(vae());
  12.  
  13. Action a = delegate() //这是Action
  14. {
  15. Console.WriteLine("哈哈哈哈哈哈");
  16. };
  17. a();
  18.  
  19. Console.ReadKey();
  20. }
  21. }
  22.  
  23. }

  Lambda表达式,作用就是为了简化匿名方法

  代码: 

  1. namespace Lambda表达式
  2. {
  3. class Program
  4. {
  5. static void Main(string[] args)
  6. {
  7. Func<int, int, int> dele = (lg1, lg2) => //=>这个符号是规范是必须写的,lambda表达式就是为了简化委托的匿名方法
  8. {
  9. return lg1 + lg2;
  10. };
  11.  
  12. Console.WriteLine(dele(,));
  13.  
  14. Func<int, int> dele = a => a+;
  15. Console.WriteLine(dele());
  16. Console.ReadKey();
  17. }
  18. }
  19. }

多播委托和匿名方法再加上Lambda表达式的更多相关文章

  1. 委托,匿名方法,Lambda,泛型委托,表达式树

    一.委托:完成一个委托应分三个步骤://step01:首先用delegate定义一个委托;public delegate int CalculatorAdd(int x, int y);//step0 ...

  2. 用五分钟重温委托,匿名方法,Lambda,泛型委托,表达式树

    这些对老一代的程序员都是老生常谈的东西,没什么新意,对新生代的程序员却充满着魅力.曾经新生代,好多都经过漫长的学习,理解,实践才能掌握委托,表达式树这些应用.今天我尝试用简单的方法叙述一下,让大家在五 ...

  3. 转帖:用五分钟重温委托,匿名方法,Lambda,泛型委托,表达式树

    用五分钟重温委托,匿名方法,Lambda,泛型委托,表达式树 这些对老一代的程序员都是老生常谈的东西,没什么新意,对新生代的程序员却充满着魅力.曾经新生代,好多都经过漫长的学习,理解,实践才能掌握委托 ...

  4. c#-委托,匿名方法,lambda表达的关系

    什么是委托: 包含单个方法的委托和函数指针是相似的,不同的是,委托是面向帝乡的并且是类型安全的 声明委托类型: delegate void mydel(int x); 声明委托和声明方法差不多,两个不 ...

  5. C# 匿名委托、匿名方法、匿名对象、Lambda表达式

    一.匿名类型可通过使用 new 运算符和对象初始值创建匿名类型.示例:var v = new { Name = "Micro", Message = "Hello&quo ...

  6. 通过Func 委托理解委托和匿名方法及Lambda 表达式

    Func<T, TResult> 委托 封装一个具有一个参数并返回 TResult 参数指定的类型值的方法. 命名空间: System 程序集: mscorlib(在 mscorlib.d ...

  7. .NET Framework System.Array.Sort 数组类,加深对 IComparer、IComparable 以及泛型委托、匿名方法、Lambda 表达式的理解

    本文内容 自定义类 Array.Sort 参考资料 System.Array.Sort 有很多对集合的操作,比如排序,查找,克隆等等,你可以利用这个类加深对 IComparer.IComparable ...

  8. C#中分别对委托、匿名方法、Lambda表达式、Lambda表达式树以及反射执行同一方法的过程进行比较。

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  9. 委托,匿名方法,lamda快速理解

    转载于用五分钟重温委托,匿名方法,Lambda,泛型委托,表达式树     这些对老一代的程序员都是老生常谈的东西,没什么新意,对新生代的程序员却充满着魅力.曾经新生代,好多都经过漫长的学习,理解,实 ...

随机推荐

  1. Android 學習之旅!(1)

    就這樣就過去了一年加一個學期,現在是大二第二個學期而且是下半學期了,以前都是無所事事,沒事睡睡覺,打打遊戲就過去了,但是想到家境和以後的路,我還是決心自己找點東西學習下,以後出去還能有一技之長(雖然可 ...

  2. opencv学习笔记(四)

    ROI---设定感兴趣的区域(region of interest) 定义: Mat imageROI; //方法一:通过Rect指定矩形区域 imageROI=image(Rect(500,250, ...

  3. Solution of wireless link "PCI unknown" on Centos 7.1

    Pick From http://www.blogjava.net/miaoyachun/archive/2015/09/17/427366.html After Centos 7.1 tobe in ...

  4. Spring AOP切点表达式用法总结

    1. 简介        面向对象编程,也称为OOP(即Object Oriented Programming)最大的优点在于能够将业务模块进行封装,从而达到功能复用的目的.通过面向对象编程,不同的模 ...

  5. python之参数解包

    # 参数解包:将整个list当做参数传给函数 list = [1, 2, 4] def add_fn(a, b, c): return a + b + c sum = add_fn(*list) pr ...

  6. js 单项链表

    介绍链表 链表是由一组节点组成的集合.每一个节点都使用一个对象的引用指向它的后续借点.指向另外一个借点的引用叫做链. 很多编程语言中数组的长度是固定的,就是定义数组的时候需要定义数组的长度,所以当数组 ...

  7. BZOJ3881[Coci2015]Divljak——AC自动机+树状数组+LCA+dfs序+树链的并

    题目描述 Alice有n个字符串S_1,S_2...S_n,Bob有一个字符串集合T,一开始集合是空的. 接下来会发生q个操作,操作有两种形式: “1 P”,Bob往自己的集合里添加了一个字符串P. ...

  8. MT【48】分式连加形式下求不等式解集的区间长度

    ] 评:此题有分析的味道在里面,用到了n次多项式的韦达定理,用到了零点存在定理以及代数基本定理:n次多项式在复数域上有n个根.

  9. 【HDU 5363】Key Set(和为偶数的子集个数)

    题 Description soda has a set $S$ with $n$ integers $\{1, 2, \dots, n\}$. A set is called key set if ...

  10. 自学Linux Shell12.1-结构化命令if-then

    点击返回 自学Linux命令行与Shell脚本之路 12.1-结构化命令if-then 许多程序要求对shell脚本中的命令施加一些逻辑流程控制.有一类命令会根据条件使脚本跳过某些命令.这样的命令通常 ...