zoukankan      html  css  js  c++  java
  • 【总结】委托和匿名委托的比较

    感觉匿名委托使用起来更简洁一点,不用在定义一个专用的委托函数来传递方法,也更可以更好的理解委托。

    一、匿名委托

     1    #region 匿名委托
     2 
     3     //定义委托
     4     delegate string lookMe(string s);
     5 
     6     protected void LinkButton1_Click(object sender, EventArgs e)
     7     {
     8         //匿名委托
     9         lookMe lm = delegate(string name) { return "亲爱的 " + name + ",请看着我的眼睛!"; };
    10 
    11         //匿名委托调用
    12         string name1 = "jarod";
    13         Label1.Text = lm(name1);
    14     }
    15 
    16     #endregion

    二、实名委托

     1  #region 委托的应用
     2 
     3     //委托的定义
     4     public delegate string  deleRate(string year);
     5 
     6     //三个方法的定义,以供委托调用
     7     public string year_2009(string s)
     8     { Response.Write("2009" + s); return "2009" + s; }
     9 
    10     //三个方法的定义,以供委托调用
    11     public string year_2008(string s)
    12     { Response.Write("2008" + s); return "2008" + s; }
    13 
    14     //三个方法的定义,以供委托调用
    15     public string year_2007(string s)
    16     { Response.Write("2007" + s); return "2007" + s; }
    17 
    18     protected void Button1_Click(object sender, EventArgs e)
    19     {
    20         deleRate dr = new deleRate(year_2009);
    21         dr += year_2008;
    22         dr += year_2007;
    23 
    24         //直接用委托实例调用方法
    25         Label1.Text = dr("");
    26 
    27         //使用委托实现方法调用方法
    28         Label1.Text = getYear(dr, "");
    29 
    30         //使用委托实现方法调用方法,方法名作为参数
    31         Label1.Text = getYear(year_2008, "");
    32     }
    33 
    34     //执行委托的过程,把参数 year2 传入实际执行的方法中去
    35     public static string getYear(deleRate dr, string year2)
    36     { return dr(year2); }
    37 
    38     #endregion

    转:https://www.cnblogs.com/jarod99/archive/2009/01/15/1376086.html

  • 相关阅读:
    windows下查看端口占用情况及关闭相应的进程
    python学习中的一些“坑”
    python 中一些关键字的区别
    linux下配置Tomcat开机启动
    windows 下的python 安装pycrypto
    'redis-server' 不是内部或外部命令,也不是可运行的程序或批处理文件
    怎么学习代码
    crx文件不能安装,提示无效的安装包
    回调函数
    koa-router的作用
  • 原文地址:https://www.cnblogs.com/zhangguorenmi/p/13034969.html
Copyright © 2011-2022 走看看