首页 > Windows开发 > 详细

C#多播委托

时间:2015-07-25 00:03:41      阅读:327      评论:0      收藏:0      [点我收藏+]

概述

  在上一篇文章中,笔者就个人理解的委托做了简单的分享,本篇文章主要来说说多播委托。多播委托即每个委托可以包含多个方法。

理解多播委托

  多播委托可以保护多个方法,但是在使用的时候需要注意:委托的签名必须是返回void,否则只能调用最后一个方法的得到结果。多播委托派生自System.MulticastDelegate类,System.MulticastDelegate类又派生自System.Delegate。System.MulticastDelegate的其他成员可以允许把多个方法调用链接为一个列表。

技术分享

下面写一个简单的示例

    class Program
    {
        static void Main(string[] args)
        {
            Action<string> operationActions = Teacher.Show;
            operationActions += Student.Show;
            operationActions.Invoke("zhangsan");

            Console.ReadKey();
        }
    }

    public class Teacher
    {
        public static void Show(string name)
        {
            Console.WriteLine("teacher say: my name is {0}",name);
        }
    }

    public class Student
    {
        public static void Show(string name)
        {
            Console.WriteLine("student say: my name is {0}", name);
        }
    }

 运行结果如下,非常简单,两个方法按顺序执行

技术分享

 

C#多播委托

原文:http://www.cnblogs.com/denglei/p/4675042.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!