Описание тега delegates
В объектно-ориентированном программировании есть три связанных понятия делегирования.
Чаще всего делегирование относится к функции языка программирования, использующей правила поиска метода для диспетчеризации так называемых самовызовов. Делегирование как языковая функция поддерживает модель программирования на основе прототипов.
Делегирование также может относиться к одному объекту, полагающемуся на другой для предоставления определенного набора функций. В исследованиях это часто называют консультацией или агрегированием при моделировании.
В C# делегат - это способ сообщить, какой метод вызывать при запуске события, с сохранением типа метода.
А Delegate
- это тип, который безопасно инкапсулирует метод, аналогично указателю на функцию в C и C++. В отличие от указателей функций C, делегаты являются объектно-ориентированными, безопасными по типу и безопасностью.