Делегат — это класс или структура

#.net

#.net

Вопрос:

я действительно запутался..

  1. делегаты — это класс или только тип. ??
  2. необходимо ли, чтобы делегат был таким же, как функция, или функция должна сохраняться как делегат

Пожалуйста, отнеситесь ко мне, я новичок в .net

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

1. msdn.microsoft.com/en-us/library/system.delegate.aspx

2. Делегат позволяет вам передавать блок кода по кругу в коде, например, в качестве параметра для любой функции.. код в качестве аргумента против обычных данных в качестве аргумента.

Ответ №1:

Может быть, вам стоит взглянуть на http://msdn.microsoft.com/en-us/library/ms173171.aspx

В основном делегаты очень похожи на указатели на функции. Они похожи на заполнители для функции. Так, например, если вы хотите написать класс, который можно настроить для использования различных функций сортировки, вы можете создать делегат, а затем заполнить его определенным методом.

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

1. аналогично указателю на функцию ….. еще одна вещь, которая приходит на ум. может ли делегат инициализировать статическую переменную или статический класс

2. Как я уже писал, делегат является только заполнителем для метода. Если метод, который вы вызываете через делегат, создает класс, тогда, конечно, доступны статические члены. В принципе, вы можете делать все через делегат, что вы можете делать при непосредственном вызове метода.

3. Если вы довольны моим ответом, проверьте его как правильный 🙂