在JS中,函数内部可以自由的定义函数,而且只在该函数内有效,也就是闭包。在C#中也类似的用法,可以在函数内部中定义函数,请看代码
class Program { static void Main(string[] args) { Test(); void Test() { Console.WriteLine("HELLO"); Console.ReadLine(); } } }
执行结果
这样的内部函数可以减少私有函数的定义,也要以弥补Func和Action不能定义泛型的不足。但这样也会带来函数内部不断的嵌套函数的问题,导致代码冗长。不管如何,这只是一种方式,关键看如何用。
转载请注明出处。