委托

c#委托

描述:委托是一个类,它定义了方法的类型,使得可以将方法当作另一个方法的参数来进行传递,这种将方法动态地赋给参数的做法,可以避免在程序中大量使用If-Else(Switch)语句,同时使得程序具有更好的可扩展性

1.委托可以把一个方法作为参数带入到另一参数.

2.委托可以理解为指向一个函数的指针.

3.委托的关键字是 delegate

4.委托是应用类型

委托简单使用:

 public delegate void MyDel();//自定义一个委托
    class Program
    {
        static void Main(string[] args)
        {
            //(1)简单委托
            MyDel say1 = SayHi;
            MyDel say2 = new MyDel(SayHi);
            say1();
            say2();
        }
        static void SayHi()
        {
            Console.WriteLine("Hi World");
        }
    }

2.委托的扩展,可以把方法作为一个参数传递给另一个方法,

 //自定义一个委托
    public delegate int WeiTuo(int a, int b);
    class Program
    {
        static void Main(string[] args)
        {
           
            JiSuan(Jia, 25, 10);
            Console.ReadKey();
        }
        static int Jia(int a, int b)
        {
            return a + b;
        }
        static int Jian(int a, int b)
        {
            return a / b;
        }
        static int Cheng(int a, int b)
        {
            return a - b;
        }
        static int Chu(int a, int b)
        {
            return a * b;
        }
        static void JiSuan(WeiTuo wt, int a, int b)
        {
            Console.WriteLine(wt(a, b) + "\n");
        }
    }

 

posted @ 2019-04-02 16:09  代码改变生活aa  阅读(248)  评论(0编辑  收藏  举报