c#委托把方法当成参数(实例讲解)

前端技术 2023/09/02 C#

静态方法代理:

复制代码 代码如下:

public delegate void DoGreeting(string name);

class Program
    {
        [STAThread]
        static void Main(string[] args)
        {
            //方法名当成参数传给委托类型调用
            MarkGreeting(\"张三\", GreetingEnglish);
            MarkGreeting(\"李四\", GreetingChinese);
        }

        /// <summary>
        /// 委托(代理的方法)
        /// </summary>
        /// <param name=\"name\"></param>
        /// <param name=\"markGreeting\"></param>
        private static void MarkGreeting(string name, DoGreeting markGreeting)
        {
            markGreeting(name);
        }

        /// <summary>
        /// 用英文打招呼
        /// </summary>
        /// <param name=\"name\"></param>
        private static void GreetingEnglish(string name)
        {
           Console.WriteLine(name+\"hello!\");
        }

        /// <summary>
        /// 用中文打招呼
        /// </summary>
        /// <param name=\"name\"></param>
        private static void GreetingChinese(string name)
        {
            Console.WriteLine(name+\"你好!\");
        }
    }

本文地址:https://www.stayed.cn/item/3601

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。