Карточка Junior Делегаты и события спрашивают часто обновлено

Что такое делегат

Вопрос

Что такое делегат в C#?

Попробуйте сами

Ответьте про себя или вслух, потом откройте ответ и сверьтесь.

Показать ответ и разбор

Коротко

Типобезопасная ссылка на метод (или несколько методов): объект, хранящий метод и целевой объект (Target) для методов экземпляра. Объявление: delegate int Op(int a, int b);, но обычно используют готовые Func< и Action<.

Ответ

Типобезопасная ссылка на метод (или несколько методов): объект, хранящий метод и целевой объект (Target) для методов экземпляра. Объявление: delegate int Op(int a, int b);, но обычно используют готовые Func<> и Action<>. Делегаты неизменяемы: += создаёт новый делегат со списком вызовов.

Разбор

На делегатах построены события, LINQ, колбэки, Task.Run и минимальные API ASP.NET Core.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме