以下の例のindex
はどのようにしてその値を取得しますか?ラムダ式の変数の値はどのように与えられますか
int[] numbers = { 5, 4, 1, 3, 9, 8, 6, 7, 2, 0 };
var firstSmallNumbers = numbers.TakeWhile((n, index) => n >= index);
TakeWhile
のシグネチャは次のとおりです:
public static IEnumerable<TSource> TakeWhile<TSource>(this IEnumerable<TSource> source, Func<TSource, int, bool> predicate);
あなたはそれがうまく型付けされてどのように機能するかを尋ねる、またはTakeWhile'が定義されているか 'インデックス/の意味は何されています? – delnan
@delnan:私はラムダに関する一般的な質問をしていると思っていましたが、回答に基づいて、TakeWhileがラムダをどのように使用しているかについて本当に質問していました。私は、nの型は数値のメンバの型から推論でき、インデックスの型はFuncによって定義されることを理解しています。 –
Bill