Metody anonimowe

Metody anonimowe to element wprowadzony do języka C# w wersji 2.0, później w znacznej mierze wyparty przez wyrażenia lambda. Metoda anonimowa bardzo przypomina wyrażenie lambda, ale nie obsługuje niejawnie typowanych parametrów, nie da się jej stosować w składni wyrażenia (metoda anonimowa zawsze musi mieć postać bloku) ani nie jest kompilowana na postać drzewa wyrażenia.

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 * x; }; Console.WriteLine ...

Get C# 5.0. Leksykon kieszonkowy. Wydanie III 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.