Lambda-Ausdrücke
Ein Lambda-Ausdruck ist eine Methode ohne Namen, die anstelle einer Delegate-Instanz geschrieben wird. Der Compiler wandelt den Lambda-Ausdruck direkt um, und zwar
in eine Delegate-Instanz oder
in einen Expression Tree vom Typ
Expression<TDelegate>
, der den Code im Lambda-Ausdruck in einem traversierbaren Objektmodell repräsentiert. Damit können Lambda-Ausdrücke zur Laufzeit interpretiert werden (wir beschreiben diesen Vorgang in Kapitel 8 von C# 5.0 in a Nutshell).
Wenn wir den Delegate-Typ
delegate int Transformer (int i);
haben, können wir den Lambda-Ausdruck x => x *
x
wie folgt zuweisen und ausführen:
Transformer sqr = x => x * x
;
Console.WriteLine (sqr(3)); // 9
Anmerkung
Intern löst der Compiler Lambda-Ausdrücke dieses Typs ...
Get C# 5.0 kurz & gut now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.