zoukankan      html  css  js  c++  java
  • 委托

    委托理解起来就想c++ 函数指针

    我的理解为 : 方法的快捷方式

        delegate int AddNumDelegate(int n);
        class Program
        {
            static void Main(string[] args)
            {
                AddNumDelegate addndlgt = new AddNumDelegate(Mydelegate.AddNum);
                Console.WriteLine(addndlgt(15));
                Console.ReadLine();
            }
        }
        class Mydelegate
        {
            public static int num = 10;
            public static int AddNum(int p)
            {
                num += p;
                return num;
            }
        }

     multicasting delegate 多路委托

    delegate int AddNumDelegate(int n);
    class Program
    {
    static void Main(string[] args)
    {
    AddNumDelegate addndlgt = new AddNumDelegate(Mydelegate.AddNum);
    Console.WriteLine(addndlgt(15));
    AddNumDelegate addndlgt2 = new AddNumDelegate(Mydelegate.RemoveNum);
    Console.WriteLine(addndlgt2(15));
    //Mydelegate.num = 0;
    AddNumDelegate addndlgtALL = addndlgt + addndlgt2;
    Console.WriteLine(addndlgtALL(15));
    Console.ReadLine();
    }
    }
    class Mydelegate
    {
    public static int num = 10;
    public static int AddNum(int p)
    {
    num += p;
    return num;
    }
    public static int RemoveNum(int p)
    {
    num -= p;
    return num;
    }
    }

  • 相关阅读:
    查看数据库所有的表
    oracle JOB学习(一)---基础
    图片实时预览JSP加js
    Collections.sort()
    FileUtil.java
    设计模式:常见类的关系
    枚举
    相册
    jQuery----blur()方法
    上传文件详解
  • 原文地址:https://www.cnblogs.com/handsomer/p/4546858.html
Copyright © 2011-2022 走看看