C# - 匿名函数
1 using System; 2 3 namespace 委托_匿名函数 4 { 5 class Program 6 { 7 /// <summary> 8 /// 声明委托: 委托的返回值类型 / 参数类型 / 参数个数 必须和被委托函数保持一致 9 /// </summary> 10 /// <param name="x"> 参与运算的数据 </param> 11 /// <param name="y"> 参与运算的数据 </param> 12 /// <returns> double 类型的值 </returns> 13 delegate double Calculate(double x, double y); 14 static void Main(string[] args) 15 { 16 /*********************************************************************** 17 * 匿名函数: 18 * 1. 省略函数名称 19 * 2. 声明格式: delegate(参数类型 形参,..) { 函数体 }; 20 ***********************************************************************/ 21 // 将匿名函数赋值给委托 22 Calculate cal = delegate(double x, double y) { return x + y; }; 23 Console.WriteLine("匿名函数, 加法运算: {0}", cal(3,4) ); 24 25 /*********************************************************************** 26 * 匿名函数与泛型委托 : 泛型委托必须多一个形参存储返回值,形参类型必须与匿名函数的返回值 27 * 类型保持一致 28 ***********************************************************************/ 29 Func<double, double, double, double> fn = delegate(double x, double y, double z) { return x * y * z; }; 30 Console.WriteLine( "匿名函数, 乘法运算: {0}", fn(1,2,3) ); 31 32 Console.ReadLine(); 33 } 34 } 35 }