Func<T1,T2,T3,T4,T5,TResult> 代理人

定義

封裝具有五個參數的方法,並傳回由 TResult 參數指定之型別的值。Encapsulates a method that has five parameters and returns a value of the type specified by the TResult parameter.

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 

類型參數

T1

此委派封裝之方法的第一個參數類型。The type of the first parameter of the method that this delegate encapsulates.

這是反變數的型別參數。 也就是說,您可以使用您指定的類型,或衍生程度較低的任何類型。 如需共變數與反變數的詳細資訊,請參閱泛型中的共變數與反變數
T2

此委派封裝之方法的第二個參數類型。The type of the second parameter of the method that this delegate encapsulates.

這是反變數的型別參數。 也就是說,您可以使用您指定的類型,或衍生程度較低的任何類型。 如需共變數與反變數的詳細資訊,請參閱泛型中的共變數與反變數
T3

此委派封裝之方法的第三個參數類型。The type of the third parameter of the method that this delegate encapsulates.

這是反變數的型別參數。 也就是說,您可以使用您指定的類型,或衍生程度較低的任何類型。 如需共變數與反變數的詳細資訊,請參閱泛型中的共變數與反變數
T4

這個委派所封裝之方法的第四個參數類型。The type of the fourth parameter of the method that this delegate encapsulates.

這是反變數的型別參數。 也就是說,您可以使用您指定的類型,或衍生程度較低的任何類型。 如需共變數與反變數的詳細資訊,請參閱泛型中的共變數與反變數
T5

這個委派所封裝方法之第 5 個參數的型別。The type of the fifth parameter of the method that this delegate encapsulates.

這是反變數的型別參數。 也就是說,您可以使用您指定的類型,或衍生程度較低的任何類型。 如需共變數與反變數的詳細資訊,請參閱泛型中的共變數與反變數
TResult

這個委派所封裝之方法的傳回值之類型。The type of the return value of the method that this delegate encapsulates.

這是共變數的型別參數。 也就是說,您可以使用您指定的類型,或衍生程度較高的任何類型。 如需共變數與反變數的詳細資訊,請參閱泛型中的共變數與反變數

參數

arg1
T1

由這個委派所封裝之方法的第一個參數。The first parameter of the method that this delegate encapsulates.

arg2
T2

此委派封裝之方法的第二個參數。The second parameter of the method that this delegate encapsulates.

arg3
T3

此委派封裝之方法的第三個參數。The third parameter of the method that this delegate encapsulates.

arg4
T4

這個委派所封裝之方法的第四個參數。The fourth parameter of the method that this delegate encapsulates.

arg5
T5

這個委派所封裝之方法的第 5 個參數。The fifth parameter of the method that this delegate encapsulates.

傳回值

TResult

這個委派所封裝之方法的傳回值。The return value of the method that this delegate encapsulates.

備註

您可以使用這個委派來代表可以傳遞為參數的方法,而不需要明確宣告自訂委派。You can use this delegate to represent a method that can be passed as a parameter without explicitly declaring a custom delegate. 封裝的方法必須對應至這個委派所定義的方法簽章。The encapsulated method must correspond to the method signature that is defined by this delegate. 這表示封裝的方法必須有五個參數,每個參數都會以傳值方式傳遞給它,而且必須傳回值。This means that the encapsulated method must have five parameters, each of which is passed to it by value, and that it must return a value.

注意

若要參考具有五個參數的方法,並傳回 void (或 Visual Basic 中宣告為,而不是 Sub 做為 Function) 的方法,請改用泛型 Action<T1,T2,T3,T4,T5> 委派。To reference a method that has five parameters and returns void (or in Visual Basic, that is declared as a Sub rather than as a Function), use the generic Action<T1,T2,T3,T4,T5> delegate instead.

您也可以搭配使用 Func<T1,T2,T3,T4,T5,TResult> 委派和匿名方法和 lambda 運算式。You can also use the Func<T1,T2,T3,T4,T5,TResult> delegate with anonymous methods and lambda expressions.

Lambda 運算式的基礎類型是其中一個泛型 Func 委派。The underlying type of a lambda expression is one of the generic Func delegates. 如此一來,您就可以將 lambda 運算式當做參數傳遞,而不需要明確地將它指派給委派。This makes it possible to pass a lambda expression as a parameter without explicitly assigning it to a delegate.

擴充方法

GetMethodInfo(Delegate)

取得表示特定委派所代表之方法的物件。Gets an object that represents the method represented by the specified delegate.

適用於

另請參閱