zoukankan      html  css  js  c++  java
  • 委托的使用和合并

    delegate void Del(string s);

    class TestClass
    {
    static void Hello(string s)
    {
    System.Console.WriteLine(" Hello, {0}!", s);
    }

    static void Goodbye(string s)
    {
    System.Console.WriteLine(" Goodbye, {0}!", s);
    }

    static void Main()
    {
    Del a, b, c, d;

    // Create the delegate object a that references
    // the method Hello:
    a = Hello;

    // Create the delegate object b that references
    // the method Goodbye:
    b = Goodbye;

    // The two delegates, a and b, are composed to form c:
    c = a + b;

    // Remove a from the composed delegate, leaving d,
    // which calls only the method Goodbye:
    d = c - a;

    System.Console.WriteLine("Invoking delegate a:");
    a("A");
    System.Console.WriteLine("Invoking delegate b:");
    b("B");
    System.Console.WriteLine("Invoking delegate c:");
    c("C");
    System.Console.WriteLine("Invoking delegate d:");
    d("D");
    }
    }

    输出结果

    Invoking delegate a:
    Hello, A!
    Invoking delegate b:
    Goodbye, B!
    Invoking delegate c:
    Hello, C!
    Goodbye, C!
    Invoking delegate d:
    Goodbye, D!
    如果方法委托里的方法有返回值,则返回最后一个有返回值的方法的返回值, 
  • 相关阅读:
    屏蔽鼠标右键/F1帮助
    vs2010如何连接到mysql数据库
    经典的数据库设计贴吧
    js子窗口刷新父窗口
    数据库三大范式
    写给毕业生
    SQL Server权限数据库设计
    .NET
    ASP.NET MVC框架(第一部分) 【转】
    什么是SQL注入法攻击 .
  • 原文地址:https://www.cnblogs.com/ylldbk/p/5212874.html
Copyright © 2011-2022 走看看