02
12/11
借助委托实现方法嵌套
C# 并不支持方法嵌套,也就是说我们不能写出下面这样的代码。 void Test() { void Inner(int x) { } Inner(123); } 但某些时候,方法嵌套却非常有用,比如说方法内的某些局部代码会被多个 "不连续" 区域调用。当然,我们可以将这些 "公用代码" 提取为类私有方法成员。但这么做有些 "别扭",或者说是 "不好看"。毕竟这些代码的使用者只有当前这个方法,将其作用域提升,有 "污染" 的嫌疑。借助于委托,我们很容易 "模拟" 出方法嵌套。 试验原型 static void Test() { var a = new[] ...