Делегат — это класс, который определяет тип метода, чтобы его можно было передать в качестве аргумента другому методу. Мероприятие — это специальное поручение.
1. Заявление о доверении
(1). Делегат
Делегат
Делегат имеет как минимум 0 параметров и максимум 32 параметра, не может иметь возвратного значения или указывать тип возвратного значения.
Например, публичный делегат int MethodtDelegate(int x, int y); Указывает, что есть два параметра, и возвращает тип int.
(2). Действие
Действие — это общий делегат без возвратного значения.
Действие представляет собой делегата без параметров и без возвратного значения
Action<int,string> указывает на делегата с входящим параметром int и без возвратного значения для строки
Action<int,string,bool> указывает на делегата с входящими параметрами int,string,bool без возвратных значений
Действие<int,int,int,int,int> означает, что входят 4 параметра типа int, и возвратное значение не отсутствует.
Действие имеет не менее 0 параметров и максимум 16 параметров, без возвратного значения.
Пример:
(3). Func
Func — это общий делегат с возвращаемым значением
Func<int> означает делегата без параметров и возвращает int-значение
Func<object,string,int> представляет делегата с входящим параметром в качестве объекта, а строка возвращает int-значение
Func<object,string,int> представляет делегата с входящим параметром в качестве объекта, а строка возвращает int-значение
Func<T1,T2,,T3,int> представляет делегата с входящим параметром T1, T2, ,T3 (генерический), возвращающим int-значение
У Func не менее 0 параметров и максимум 16 параметров, которые возвращаются в соответствии с генерическим возвратным значением. Должна быть возвратная стоимость, а не недействительная
Пример:
(4) .предикат
Предикат — это общий делегат, который возвращает тип буля
<int> Предикат представляет делегата с входящим параметром int, возвращающим bool
Предикат имеет только один параметр, и возвращаемое значение фиксировано в bool
Пример:
|