码迷,mamicode.com
首页 > Windows程序 > 详细

C#多播委托

时间:2015-07-25 00:05:08      阅读:241      评论: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
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!