委託是一個類,它定義了方法的類型,使得可以將方法當作另一個方法的參數來進行傳遞。事件是一種特殊的委託。
1.委託的聲明
(1). delegate
delegate我們常用到的一種聲明
Delegate至少0個參數,至多32個參數,可以無傳回值,也可以指定傳回值類型。
例:public delegate int MethodtDelegate(int x, int y);表示有兩個參數,並返回int型。
(2). Action
Action是無傳回值的泛型委派。
Action 表示無參,無傳回值的委託
Action
表示有傳入參數int,string無傳回值的委託
Action 表示有傳入參數int,string,bool無傳回值的委託
Action 表示有傳入4個int型參數,無傳回值的委託
Action至少0個參數,至多16個參數,無傳回值。
例:
public void Test(Action action,T p)
{
action(p);
}
(3). Func
Func是有傳回值的泛型委派
Func 表示無參,傳回值為int的委託
Func