C#_lambda
最近我发向一个问题,C#中lambda表达式中消息体中的字段是如何传递的。这种其实不是字段的传递而是Closures
什么是closures
简单来说,closures允许我们捕获一些行为,传递给其他的对象,并且在其他的对象中仍然能获取到捕获行为第一次被声明的上下文。访问原始上下文的能力是将闭包与普通对象区分开来的地方。说起来挺难其实很简单,代码奉上,下面两个代码是相等的
不使用closures
1 | static void Main(string[] args) |
使用closures
1 | static void Main(string[] args) |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Exiaozhang`s Blog!
评论
ValineUtterances