一、簡介
1、匿名函數:匿名函數是一個“內聯”語句或表達式,可在需要委託類型的任何地方使用。 可以使用匿名函數來初始化命名委託,或傳遞命名委託(而不是命名委託類型)作爲方法參數。
2、共有兩種匿名函數:
(1)Lambda表達式;
(2)匿名方法;
3、在 C# 1.0 中,您通過使用在代碼中其他位置定義的方法顯式初始化委託來創建委託的實例。 C# 2.0 引入了匿名方法的概念,作爲一種編寫可在委託調用中執行的未命名內聯語句塊的方式。 C# 3.0 引入了 Lambda 表達式,這種表達式與匿名方法的概念類似,但更具表現力並且更簡練。
二、實例
public class Program
{
public delegate int Sum(int a, int b);
public static void Main(string[] args)
{
//.net1.0支持
Sum pSum_1 = new Sum(GetSum);
//.net2.0支持
Sum pSum_2 = delegate(int a, int b)
{
return a + b;
};
//.net3.0支持
Sum pSum_3 = (a, b) => a + b;
Console.WriteLine(pSum_1(3, 4));
Console.WriteLine(pSum_2(5, 6));
Console.WriteLine(pSum_3(7, 8));
Console.ReadLine();
}
public static int GetSum(int a, int b)
{
return a + b;
}
}