Csharp中Func委托的用法
2021-11-28 21:39 作者:CAE虛擬與現(xiàn)實(shí) | 我要投稿
Action委托和Func委托是C#平臺(tái)最重要的兩個(gè)委托,有了這兩個(gè)委托,就可以定義出指向任意方法的“函數(shù)指針”。注意:這里的函數(shù)指針是打引號(hào)的,因?yàn)镃#里不叫函數(shù)指針。
我們看看怎么使用Func委托
1、創(chuàng)建控制臺(tái)應(yīng)用程序,定義帶參數(shù)的方法SayHello。如下圖:

2、下面定義Func委托的變量,那么像SayHello方法這樣,帶一個(gè)參數(shù),一個(gè)返回值的委托應(yīng)該這么定義呢?
C#已經(jīng)替你想好了,F(xiàn)unc委托是帶泛型的委托,可以任意指定類型。那么就看一下怎么使用這個(gè)功能。如下圖:

3、下面解析一下這一條定義語句:
“Func<int, int> func = new Func<int, int>(SayHello)” 。
Func<int,int>間括號(hào)里有兩個(gè)int,第一個(gè)int表示有一個(gè)int類型的參數(shù),第二個(gè)int,表示有一個(gè)int類型的返回值。
4、定義完成后,就可以使用了。 使用的代碼,如下圖: 調(diào)用委托的Invoke方法,就相當(dāng)于調(diào)用SayHello方法。 也可以簡寫為"func(3)"。

5、結(jié)果輸出

標(biāo)簽: