C#闭包函数

在JS中,函数内部可以自由的定义函数,而且只在该函数内有效,也就是闭包。在C#中也类似的用法,可以在函数内部中定义函数,请看代码

  class Program
    {
        static void Main(string[] args)
        {
            Test();

            void Test()
            {
                Console.WriteLine("HELLO");

                Console.ReadLine();
            }
        }
    }

执行结果


这样的内部函数可以减少私有函数的定义,也要以弥补Func和Action不能定义泛型的不足。但这样也会带来函数内部不断的嵌套函数的问题,导致代码冗长。不管如何,这只是一种方式,关键看如何用。

转载请注明出处。

posted @ 2017-05-02 08:56  _学而时习之  阅读(201)  评论(0编辑  收藏  举报