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 O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.