Sdílet prostřednictvím


Func<T1,T2,T3,T4,T5,TResult> Delegát

Definice

Zapouzdří metodu, která má pět parametrů a vrátí hodnotu typu určeného parametrem TResult .

generic <typename T1, typename T2, typename T3, typename T4, typename T5, typename TResult>
public delegate TResult Func(T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5);
public delegate TResult Func<in T1,in T2,in T3,in T4,in T5,out TResult>(T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5);
type Func<'T1, 'T2, 'T3, 'T4, 'T5, 'Result> = delegate of 'T1 * 'T2 * 'T3 * 'T4 * 'T5 -> 'Result
Public Delegate Function Func(Of In T1, In T2, In T3, In T4, In T5, Out TResult)(arg1 As T1, arg2 As T2, arg3 As T3, arg4 As T4, arg5 As T5) As TResult 

Parametry typu

T1

Typ prvního parametru metody, který tento delegát zapouzdřuje.

Tento parametr typu je kontravariantní. To znamená, že můžete použít buď zadaný typ, nebo libovolný typ, který je méně odvozený. Další informace o kovarianci a kontravarianci najdete v tématu popisujícím kovarianci a kontravarianci u parametrického polymorfismu.
T2

Typ druhého parametru metody, kterou tento delegát zapouzdřuje.

Tento parametr typu je kontravariantní. To znamená, že můžete použít buď zadaný typ, nebo libovolný typ, který je méně odvozený. Další informace o kovarianci a kontravarianci najdete v tématu popisujícím kovarianci a kontravarianci u parametrického polymorfismu.
T3

Typ třetí parametr metody, který tento delegát zapouzdřuje.

Tento parametr typu je kontravariantní. To znamená, že můžete použít buď zadaný typ, nebo libovolný typ, který je méně odvozený. Další informace o kovarianci a kontravarianci najdete v tématu popisujícím kovarianci a kontravarianci u parametrického polymorfismu.
T4

Typ čtvrtého parametru metody, který tento delegát zapouzdřuje.

Tento parametr typu je kontravariantní. To znamená, že můžete použít buď zadaný typ, nebo libovolný typ, který je méně odvozený. Další informace o kovarianci a kontravarianci najdete v tématu popisujícím kovarianci a kontravarianci u parametrického polymorfismu.
T5

Typ pátého parametru metody, který tento delegát zapouzdřuje.

Tento parametr typu je kontravariantní. To znamená, že můžete použít buď zadaný typ, nebo libovolný typ, který je méně odvozený. Další informace o kovarianci a kontravarianci najdete v tématu popisujícím kovarianci a kontravarianci u parametrického polymorfismu.
TResult

Typ návratové hodnoty metody, kterou tento delegát zapouzdřuje.

Tento parametr typu je kovariantní. To znamená, že můžete použít buď zadaný typ, nebo libovolný typ, který je více odvozený. Další informace o kovarianci a kontravarianci najdete v tématu popisujícím kovarianci a kontravarianci u parametrického polymorfismu.

Parametry

arg1
T1

První parametr metody, kterou tento delegát zapouzdřuje.

arg2
T2

Druhý parametr metody, který tento delegát zapouzdřuje.

arg3
T3

Třetí parametr metody, který tento delegát zapouzdřuje.

arg4
T4

Čtvrtý parametr metody, který tento delegát zapouzdřuje.

arg5
T5

Pátý parametr metody, který tento delegát zapouzdřuje.

Návratová hodnota

TResult

Návratová hodnota metody, kterou tento delegát zapouzdřuje.

Poznámky

Tento delegát můžete použít k reprezentaci metody, která může být předána jako parametr bez explicitní deklarace vlastního delegáta. Zapouzdřená metoda musí odpovídat podpisu metody, který je definován tímto delegátem. To znamená, že zapouzdřená metoda musí mít pět parametrů, z nichž každý je jí předán hodnotou, a že musí vrátit hodnotu.

Poznámka

Chcete-li odkazovat na metodu, která má pět parametrů a vrací void (nebo v jazyce Visual Basic, která je deklarována jako Sub místo Functionjako ), použijte místo toho obecný Action<T1,T2,T3,T4,T5> delegát.

Delegáta můžete použít Func<T1,T2,T3,T4,T5,TResult> také s anonymními metodami a výrazy lambda.

Základní typ výrazu lambda je jedním z obecných Func delegátů. To umožňuje předat výraz lambda jako parametr bez explicitního přiřazení delegáta.

Metody rozšíření

GetMethodInfo(Delegate)

Získá objekt, který představuje metodu reprezentovanou zadaným delegátem.

Platí pro

Viz také