В C# делегаты — это типы, которые представляют ссылки на методы. Основные типы делегатов:
Расскажи о различных типах делегатов, которые ты знаешь
В C# делегаты — это типы, которые представляют ссылки на методы. Основные типы делегатов:
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
В C# делегаты — это типы, которые представляют ссылки на методы. Основные типы делегатов:
- Обычные делегаты — определяются явно, могут ссылаться на методы с определённой сигнатурой.
- Многоадресные (Multicast) делегаты — могут содержать список методов, вызываемых последовательно.
- Action — встроенный делегат без возвращаемого значения, с параметрами от 0 до 16.
- Func — встроенный делегат с возвращаемым значением, параметры и тип результата задаются.
- Predicate — делегат, принимающий один параметр и возвращающий bool.
Пример обычного делегата:
public delegate void Notify(string message);
Notify notify = message => Console.WriteLine(message);
notify("Hello");
Многоадресный делегат позволяет подписывать несколько методов:
notify += AnotherMethod;