美文网首页
匿名方法

匿名方法

作者: bravelion | 来源:发表于2019-10-06 14:13 被阅读0次

    1.概念

    匿名方法:提供了一种传递代码作为委托参数的技术。匿名方法是没有名称只有主体的方法。

    在匿名方法中您不需要指定返回类型,它是从方法主体内的retrun语句推断。

    2.编写匿名方法的语法

    匿名方法是通过使用delegate关键字创建委托实例来声明的。例如:

    delegate void NumberChanger(int n);

    NumberChanger nc = delegate(int x)

    {

         Console.WriteLine("Anonymous Method: {0}", x);

    }

    3.总结

    委托可以通过匿名方法调用,也可以通过命名方法调用,即,通过向委托对象传递方法参数。请看如下完整例子:

    using System;

    delegate void NumberChanger(int n);

    namespace DelegateAppl

    {

     class TestDelegate

     {

     static int num = 10;

     public static void AddNum(int p)

     {

    num += p;

                Console.WriteLine("Named Method: {0}", num);

     }

     public static void MultNum(int q)

     {

    num *= q;

                Console.WriteLine("Named Method: {0}", num);

     }

     static void Main(string[] args)

     {

     // 使用匿名方法创建委托实例

    NumberChanger nc = delegate(int x)

     {

                   Console.WriteLine("Anonymous Method: {0}", x);

     };

     // 使用匿名方法调用委托

                nc(10);

     // 使用命名方法实例化委托

    nc = new NumberChanger(AddNum);

     // 使用命名方法调用委托

                nc(5);

     // 使用另一个命名方法实例化委托

    nc = new NumberChanger(MultNum);

     // 使用命名方法调用委托

                nc(2);

                Console.ReadKey();

     }

     }

    }

    以上摘自菜鸟教程

    相关文章

      网友评论

          本文标题:匿名方法

          本文链接:https://www.haomeiwen.com/subject/pkuupctx.html