Страницы

Поиск по вопросам

воскресенье, 31 марта 2019 г.

Когда обычно нужно использовать делегаты?

Изучаю C#, прошу разъяснить про делегаты - которые предназначены для ситуаций, когда требуется передать методы другим методам в качестве параметров! Но кода это надо? И зачем? Большое спасибо!


Ответ

Реализация обработчиков событий и событийной модели как таковой. Скажем, кликаете на кнопку, и при клике что-то происходит. Чтобы сообщить программе, какое именно "что-то" должно произойти, применяют делегаты LINQ и любые другие элементы функционального программирования в C# - там все основано на делегатах и их "сокращенных" вариантах - лямбда-функциях Они также весьма полезны при реализации многопоточных и асинхронных программ Вообще для реализации коллбэков. Например, функций сортировки. Чтобы сообщить программе, как именно нужно сортировать пользовательские типы данных, в метод сортировки необходимо передать другой метод, позволяющий сравнивать экземпляры сортируемого типа А вообще очень любопытно, по какому источнику вы изучаете язык, что в нем этого не написано?

Комментариев нет:

Отправить комментарий