什么是闭包?.NET 中是否有闭包?
如果在.NET中存在闭包,你能提供一个代码片段(最好用C#)来解释它吗?
public string GetByName(string name)
{
List<things> theThings = new List<things>();
return theThings.Find<things>(t => t.Name == name)[0];
}
所以在find方法内部的函数。
t => t.Name == name
可以访问其作用域内的变量t,以及其父级作用域中的变量名。即使它作为委托由find方法执行,来自完全不同的作用域。