帮忙解释C#中两个Func<T, TResult >的区别
Expression<Func<int,bool>>和Func<int,bool>有什么区别呢。比如Expression<Func<int,bool>>expr=i=>i...
Expression<Func<int, bool>>和Func<int, bool>有什么区别呢。比如
Expression<Func<int, bool>> expr = i => i < 5; Func<int, bool> deleg = expr.Compile();为什么expr要Compile()后才能赋值给deleg ? 展开
Expression<Func<int, bool>> expr = i => i < 5; Func<int, bool> deleg = expr.Compile();为什么expr要Compile()后才能赋值给deleg ? 展开
1个回答
推荐于2017-05-21
展开全部
很大的区别:Expression<Func<int, bool>>是表达式,<Func<int, bool>是委派(delegate)Expression编译后就会变成delegate,才能运行。比如 Expression<Func<int, bool>> ex = x=>x < 100; Func<int, bool> func = ex.Compile(); 然后你就可以调用func: func(5) //-返回 true func(200) //- 返回 false而表达式是不能直接调用的。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询