Func<T1,T2,T3,T4,T5,T6,T7,TResult> Делегат
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Инкапсулирует метод, который принимает семь параметров и возвращает значение типа, указанного в параметре TResult
.
generic <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename TResult>
public delegate TResult Func(T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7);
public delegate TResult Func<in T1,in T2,in T3,in T4,in T5,in T6,in T7,out TResult>(T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7);
type Func<'T1, 'T2, 'T3, 'T4, 'T5, 'T6, 'T7, 'Result> = delegate of 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 -> 'Result
Public Delegate Function Func(Of In T1, In T2, In T3, In T4, In T5, In T6, In T7, Out TResult)(arg1 As T1, arg2 As T2, arg3 As T3, arg4 As T4, arg5 As T5, arg6 As T6, arg7 As T7) As TResult
Параметры типа
- T1
Тип первого параметра метода, инкапсулируемого данным делегатом.
Это контравариантный параметр типа. Это означает, что вы можете использовать любой из указанных типов или любой тип, являющийся менее производным. Дополнительные сведения о ковариантности и контрвариантности см. в статье Ковариантность и контрвариантность в универсальных шаблонах.- T2
Тип второго параметра метода, инкапсулируемого этим делегатом.
Это контравариантный параметр типа. Это означает, что вы можете использовать любой из указанных типов или любой тип, являющийся менее производным. Дополнительные сведения о ковариантности и контрвариантности см. в статье Ковариантность и контрвариантность в универсальных шаблонах.- T3
Тип третьего параметра метода, инкапсулируемого этим делегатом.
Это контравариантный параметр типа. Это означает, что вы можете использовать любой из указанных типов или любой тип, являющийся менее производным. Дополнительные сведения о ковариантности и контрвариантности см. в статье Ковариантность и контрвариантность в универсальных шаблонах.- T4
Тип четвертого параметра метода, инкапсулируемого этим делегатом.
Это контравариантный параметр типа. Это означает, что вы можете использовать любой из указанных типов или любой тип, являющийся менее производным. Дополнительные сведения о ковариантности и контрвариантности см. в статье Ковариантность и контрвариантность в универсальных шаблонах.- T5
Тип пятого параметра метода, инкапсулируемого данным делегатом.
Это контравариантный параметр типа. Это означает, что вы можете использовать любой из указанных типов или любой тип, являющийся менее производным. Дополнительные сведения о ковариантности и контрвариантности см. в статье Ковариантность и контрвариантность в универсальных шаблонах.- T6
Тип шестого параметра метода, инкапсулируемого данным делегатом.
Это контравариантный параметр типа. Это означает, что вы можете использовать любой из указанных типов или любой тип, являющийся менее производным. Дополнительные сведения о ковариантности и контрвариантности см. в статье Ковариантность и контрвариантность в универсальных шаблонах.- T7
Тип седьмого параметра метода, инкапсулируемого данным делегатом.
Это контравариантный параметр типа. Это означает, что вы можете использовать любой из указанных типов или любой тип, являющийся менее производным. Дополнительные сведения о ковариантности и контрвариантности см. в статье Ковариантность и контрвариантность в универсальных шаблонах.- TResult
Тип возвращаемого значения метода, инкапсулируемого данным делегатом.
Это ковариантный параметр типа. Это означает, что вы можете использовать любой из указанных типов или любой тип, являющийся более производным. Дополнительные сведения о ковариантности и контрвариантности см. в статье Ковариантность и контрвариантность в универсальных шаблонах.Параметры
- arg1
- T1
Первый параметр метода, инкапсулируемого данным делегатом.
- arg2
- T2
Второй параметр метода, инкапсулируемого данным делегатом.
- arg3
- T3
Третий параметр метода, инкапсулируемого данным делегатом.
- arg4
- T4
Четвертый параметр метода, инкапсулируемого этим делегатом.
- arg5
- T5
Пятый параметр метода, инкапсулируемого данным делегатом.
- arg6
- T6
Шестой параметр метода, инкапсулируемого данным делегатом.
- arg7
- T7
Седьмой параметр метода, инкапсулируемого данным делегатом.
Возвращаемое значение
- TResult
Возвращаемое значение метода, инкапсулируемого данным делегатом.
Комментарии
Этот делегат можно использовать для представления метода, который можно передать в качестве параметра без явного объявления пользовательского делегата. Инкапсулированный метод должен соответствовать сигнатуре метода, определенной этим делегатом. Это означает, что инкапсулированный метод должен иметь семь параметров, каждый из которых передается ему по значению, и что он должен возвращать значение.
Примечание
Чтобы сослаться на метод, имеющий семь параметров и возвращающих void
(или в Visual Basic, объявленный как не какSub
), используйте вместо него универсальный Action<T1,T2,T3,T4,T5,T6,T7> Function
делегат.
Делегат также можно использовать Func<T1,T2,T3,T4,T5,T6,T7,TResult> с анонимными методами и лямбда-выражениями.
Базовый тип лямбда-выражения является одним из универсальных Func
делегатов. Это позволяет передать лямбда-выражение в качестве параметра без явного назначения его делегату.
Методы расширения
GetMethodInfo(Delegate) |
Получает объект, представляющий метод, представленный указанным делегатом. |