В C# есть такие 2 темы, как делегаты и события.
Я попробовал их изучить, даже код рабочий, но я не понимаю сути. Зачем, как и почему.
Делегаты:
Делегаты я понимаю только так:Есть функция
Код:
public void MyFunction(int a, int b)То есть объявляем делегат с такой же сигнатурой:
Код:
public delegate void MyDelegate(int a, int b);Код:
MyDelegate md = new MyDelegate(MyFunction);Код:
md(4, 4);Можете считать, что делегат это просто ссылка на функцию. Переменная, которая содержит ее адрес.
ВОт вы разрабатываете ГУИ либу и, естественно, хотите, чтобы программист ее использующий мог сам написать функцию обработчик события "клик" по кнопке.
ВОт вы разрабатываете ГУИ либу и, естественно, хотите, чтобы программист ее использующий мог сам написать функцию обработчик события "клик" по кнопке.
события:
Как я понимаю, события вызываются при каких то условиях. Например Tick, прошла секунда, Click нажата кнопка и проч.
Использовать готовые события и назначать обработчики не вопрос. А вот делать свои...
Комментариев нет:
Отправить комментарий