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.