C#委托使用:多播 ,向委托注册多个方法

本文介绍了一个C#中委托的简单示例,展示了如何创建和使用委托进行方法的多播调用,并介绍了如何获取委托调用列表中方法的数量及移除绑定方法。
           private static void EnglishGreeting(string name) {
               Console.WriteLine("Morning, " + name);
           }

           private static void ChineseGreeting(string name) {
               Console.WriteLine("早上好, " + name);
           }

   

           static void Main(string[] args) {
       
               GreetingDelegate gd = EnglishGreeting;
               gd += ChineseGreeting;
               gd("多播调用");

               Console.ReadKey();
           }

  

由于委托类型派生自 System.Delegate,因此可以在委托上调用该类定义的方法和属性。  例如,若要查询委托调用列表中方法的数量,你可以编写: 

   int invCount= gd.GetInvocationList().Count();

  

移除指定绑定方法-=

   GreetingDelegate gd = EnglishGreeting;
               gd -= EnglishGreeting;

               gd += ChineseGreeting;

               gd("多播调用");
               int invCount= gd.GetInvocationList().Count();
               Console.WriteLine(invCount);
               Console.ReadKey();

  

如果移除已经移除的绑定方法 那么也不会报错

 

转载于:https://www.cnblogs.com/ProDoctor/p/6068183.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值