• 【总结】委托和匿名委托的比较


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

    一、匿名委托

     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

  • 相关阅读:
    You can’t access this shared folder because your organization’s security policies block unauthenticated guest access
    iOS 程序退出之后
    给网站得标签头加上小图标
    ios外界蓝牙适配
    JavaScript&jquery判断下载地址是否可用,同时判断浏览器是否禁用弹窗
    GCD初级使用
    find与xargs
    sed命令详解
    shell变量详解
    date命令详解
  • 原文地址:https://www.cnblogs.com/zhangguorenmi/p/13034969.html
Copyright © 2020-2023  润新知