Metody anonimowe

Metody anonimowe zostały wprowadzone do języka C# w wersji 2.0, a w C# 3.0 podciągnięte pod wyrażenia lambda. Metoda anonimowa bardzo przypomina wyrażenie lambda, ale brakuje jej następujących właściwości:

  • niejawnie typowanych parametrów,

  • składni wyrażenia (metoda anonimowa musi zawsze zawierać blok instrukcji),

  • możliwości kompilowania w postać drzewa wyrażenia poprzez przypisanie do Expression<T>.

Aby napisać metodę anonimową, należy zastosować słowo kluczowe delegate uzupełnione o deklarację parametrów, a następnie właściwe ciało funkcji. Na przykład dla takiego delegatu:

delegate int Transformer (int i);

moglibyśmy napisać i wywołać metodę anonimową tak, jak na poniższym przykładzie:

Transformer sqr = delegate (int x) { return x * ...

Get C# 3.0. Leksykon kieszonkowy. Wydanie II 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.