首页 > 代码库 > C# 委托

C# 委托

基本步骤

(1)定义委托类型,其定义类似方法的定义,只是多了一个delegate;

(2)实例化委托,委托也是属于类类型所以用也用new关键字实例化;

委托的实例化用一个方法名作为参数,并且该方法的定义必须符合委托的定义;

即参数个数、参数类型、返回类型与委托一样

(3)把委托实例化的对象当参数传递给其他方法或直接执行委托(实质就是在执行委托包装的方法);

C#委托可以理解为函数的包装,他可以使方法作为参数来传递给另一个方法

技术分享

例:

 1 class HelloWorld 2    { 3       //定义委托类型,其定义类似方法的定义,只是多了一个delegate; 4       delegate void Mydelegate(int a,int b); 5       static void Main(string[] args) 6       { 7          //声明与实例化委托变量 8          Mydelegate mydelegate=new Mydelegate(new HelloWorld().Add); 9          //将实例化的对象mydelegate作为参数传递给方法10          new HelloWorld().Go(mydelegate);11          Console.ReadKey();12       }13       void Add(int a=0,int b=0)14       {15           Console.Write("This sum is {0}",a+b);16       }17        private void Go(Mydelegate mydelete)18        {19            //在方法中调用委托20            mydelete(10,20);21        }22    }

结果为:

技术分享

 

C# 委托