【发布时间】:2011-10-18 14:54:14
【问题描述】:
下面的两个 sn-ps 产生相同的输出。 我了解 Func 如何用单个参数封装方法,并返回一个布尔值。你可以给它分配一个 方法、匿名方法或 lambda 表达式。
Func<int, bool> deleg = i => i < 5;
Console.WriteLine("deleg(4) = {0}", deleg(4));
下面是使用我还不完全理解的表达式树。我为什么要这样做?是不是更灵活,给我带来了什么好处?
System.Linq.Expressions.Expression<Func<int, bool>> expr = i => i < 5;
Func<int, bool> deleg2 = expr.Compile();
Console.WriteLine("deleg2(4) = {0}", deleg2(4));
【问题讨论】:
标签: c# delegates lambda expression-trees