zoukankan      html  css  js  c++  java
  • c#委托把方法当成参数

     //定义委托,它定义了可以代表的方法的类型
            public delegate void GreetingDelegate(string name);
    
            /// <summary>
            /// 用英文打招呼
            /// </summary>
            /// <param name="name"></param>
    
            private void EnglishGreeting(string name)
            {
                Console.WriteLine("Morning, " + name);
            }
    
            /// <summary>
            /// 用中文打招呼
            /// </summary>
            /// <param name="name"></param>
    
            private void ChineseGreeting(string name)
            {
                Console.WriteLine("早上好, " + name);
            }
    
            //注意此方法,它接受一个GreetingDelegate类型的方法作为参数
            /// <summary>
            /// 委托(代理的方法)
            /// </summary>
            /// <param name="name"></param>
            /// <param name="markGreeting"></param>
    
            private void GreetPeople(string name, GreetingDelegate MakeGreeting)
            {
                MakeGreeting(name);
            }
    
            private void Form1_Load(object sender, EventArgs e)
            {
                //Delegate方式一:
                //GreetPeople("Jimmy Zhang", EnglishGreeting);
                //GreetPeople("张子阳", ChineseGreeting);
                //Console.ReadKey();
    
                //Action方式二:
                GreetPeopleAction("Jimmy Zhang", (s) =>
                {
                    Console.WriteLine("Morning, " + s);
                });
    
                GreetPeopleAction("张子阳", (s) =>
                {
                    Console.WriteLine("早少好, " + s);
                });
    
                Console.ReadKey();
            }
    
            /// <summary>
            /// Action委托作为参数
            /// </summary>
            /// <param name="name"></param>
            /// <param name="action"></param>
            public void GreetPeopleAction(string name, Action<string> action)
            {
                action(name);
            }
  • 相关阅读:
    Unstar A File:
    star 一个文件
    列出大星号文件
    删除用户
    curl -d
    创建用户
    Check Account Info
    List Accounts
    认证ping
    python 解接口返回的json字符串
  • 原文地址:https://www.cnblogs.com/51net/p/4191909.html
Copyright © 2011-2022 走看看