我想要用最好的方式来说出这个问题,以便我的确切问题不需要有人解释Aggregate做了什么,因为我知道这已经在互联网上的其他地方深入报道了。当调用Aggregate()并使用linq语句如什么是A&B代表.Aggregate((a,b)=>声明w/a&b)
(a,b) => a+b
什么是和什么是b?我知道a是当前元素,但是b是什么?我已经看过一些例子,看起来b仅仅是一个元素之前的一个元素,而其他例子中它似乎是前一个函数的结果,而其他例子中的b似乎是前一个函数的结果。
我已经通过实例看实际的C#文档页面这里 http://msdn.microsoft.com/en-us/library/bb548744.aspx 这里 http://www.dotnetperls.com/aggregate
但我只是需要一些澄清在LINQ表达式两个参数之间的差异。如果我错过了一些基本的Linq知识来回答这个问题,请随时把我放在我的位置。
这取决于您打电话给哪个签名。 – SLaks 2013-03-13 18:55:36
a和b是传递给Aggregate的lambda委托的参数。它们的类型(除非你得到编译器错误)由C#编译器推断,取决于上下文和被调用的具体扩展方法,并且可以通过将它们悬停在lambda的RHS上来确定它们的类型。 – 2013-03-13 18:57:31