Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
⊗csOpDeMc 132 of 163 menu
◀ ▶

Цепочка вызовов в C#

Мультикаст-делегат хранит цепочку методов. При вызове переменной они выполняются один за другим в порядке добавления.

Оператор += добавляет метод в цепочку. Запишем два обработчика и вызовем делегат:

void First() { Console.Write("1"); } void Second() { Console.Write("2"); } Action flow = First; flow += Second; flow();

Тот же прием работает для делегата с параметром. Запишем два метода с аргументом строки:

void Head(string text) { Console.WriteLine("head"); } void Tail(string text) { Console.WriteLine("tail"); } Action<string> chain = Head; chain += Tail; chain("x");

Сделайте три метода без параметров, каждый выводит свою цифру с новой строки. Соберите их в одной переменной без параметров и вызовите один раз.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить