"匿名方法" 就是没有名字的方法
“匿名方法”由于没有名称,所以只能赋值给一个委托进行调用。
“匿名方法”的作用就是减少代码量,减少复杂性,且这个方法不需要在别处调用。
“匿名方法”的本质还是方法,使用委托的地方都可以用
例如:Func<int,int,int> funAddingMethodHandle = delegate(int num1, int num2)
{
return num1 + num2;
};
源代码:
/***
*学习匿名委托
*
* 功能:减少委托的代码量
*
*/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace chapter26匿名方法
{
class Program
{
Func<int, int, int> funAddingHandler;
public Program()
{
funAddingHandler += AddingMethod;
}
public int AddingMethod(int num1, int num2)
{
return num1 + num2;
}
//调用委托
public void Test1()
{
int result = funAddingHandler.Invoke(1, 2);
Console.WriteLine(result);
}
/// <summary>
/// 使用匿名方法,减少代码量
/// </summary>
public void Test2()
{
Func<int, int, int> funAddingHandler2 = delegate(int num1, int num2)
{
return num1 + num2;
};
//调用测试
int result = funAddingHandler2.Invoke(4, 7);
Console.WriteLine(result);
}
static void Main(string[] args)
{
Program obj = new Program();
//obj.Test1();
obj.Test2();
}
}
}