zoukankan      html  css  js  c++  java
  • 委托使用的四个步骤:


    委托使用的四个步骤:

    1、定义一个委托(须指明委托所要绑定的函数的类型和参数)

        例如:public delegate void Make(string name);

          此委托只能绑定(暂且说成是绑定吧)到返回值是void 参数只有一个并且参数是string类型的函数

    2、定义 相应的函数:

         返回值类型和参数都需要一致

        举例:定义和上边的委托一致的函数

           

         private static void EnglishGreeting(string name)
            {
                Console.WriteLine("Morning, " + name);
            }

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

    3、将委托绑定到相应的函数上

        //注意此方法,它接受一个Make类型(即自己定义的委托)的方法作为参数

         //注意此方法,它接受一个GreetingDelegate类型的方法作为参数
            private static void GreetPeople(string name, Make MakeGreeting)
            {
                MakeGreeting(name);
            }

    4,委托的使用(只需调用使用函数(自己定义的委托类型)作为参数的那个函数即可)

       static void Main(string[] args)
            {
                GreetPeople("Jimmy Zhang", EnglishGreeting);
                GreetPeople("张子阳", ChineseGreeting);
                Console.ReadKey();
            }

     附上完整代码

    委托使用简单示例
     1 class Program
    2 {
    3 public delegate void Make(string name);
    4
    5 private static void EnglishGreeting(string name)
    6 {
    7 Console.WriteLine("Morning, " + name);
    8 }
    9
    10 private static void ChineseGreeting(string name)
    11 {
    12 Console.WriteLine("早上好, " + name);
    13 }
    14
    15 //注意此方法,它接受一个GreetingDelegate类型的方法作为参数
    16 private static void GreetPeople(string name, Make MakeGreeting)
    17 {
    18 MakeGreeting(name);
    19 }
    20
    21 static void Main(string[] args)
    22 {
    23 GreetPeople("Jimmy Zhang", EnglishGreeting);
    24 GreetPeople("张子阳", ChineseGreeting);
    25 Console.ReadKey();
    26 }
    27 }
  • 相关阅读:
    如何使用反射技术获取泛型类的真实类型?
    applicationContext.xml文件如何调用外部properties等配置文件
    applicationContext.xml中的使用${}是代表什么意思?
    net.sf.json.JSONException: There is a cycle in the hierarchy!错误解决方案
    MySql中LongText字段对应Hibernate映射文件的设置(转)
    ckeditor的详细配置(转)
    XML-学习
    WSDL-学习总结
    ONVIF-WSDL
    sourceinsight相关配置
  • 原文地址:https://www.cnblogs.com/lsysunbow/p/2378081.html
Copyright © 2011-2022 走看看