Visual Studio调试“快速监视”工具和lambda表达式

为什么在“快速监视”窗口中调试时不能使用lambda表达式?

UPD:另请参见

http://blogs.msdn.com/b/jaredpar/archive/2009/08/26/why-no-linq-in-debugger-

windows.aspx

http://blogs.msdn.com/b/jaredpar/archive/2010/06/02/why-is-linq-absent-from-

debugger-windows-

part-2.aspx

回答:

Lambda表达式就像匿名方法一样,实际上是非常复杂的野兽。即使我们排除Expression(.NET 3.5),仍然留下了 很多

复杂性,尤其是捕获的变量,这些变量从根本上重新构造了使用它们的代码(您认为变量成为编译器生成的类中的字段) ,有一点烟雾和镜子。

因此,您可以无所事事地使用它们,我一点也不感到惊讶-有 很多 支持这种魔术的编译器工作(以及幕后的类型生成)。

以上是 Visual Studio调试“快速监视”工具和lambda表达式 的全部内容, 来源链接: utcz.com/qa/402219.html

回到顶部