目录
1.什么是匿名函数?
匿名函数就是没有名字的函数,匿名函数的使用主要是配合委托和事件进行使用。
脱离委托和事件是不会使用匿名函数的。
2.基本语法
delegate(参数列表)
{
//函数逻辑
};
何时使用?
函数中传递委托参数时,委托或事件赋值时使用。
3.使用
无参无返回值函数
下面这样声明匿名函数只是在声明函数而已,还没有调用。真正调用它的时候是这个委托容器什么时候调用就什么时候调用这个匿名函数。
Action a = delegate ()
{
Console.WriteLine("匿名函数逻辑");
};
a();
有参
Action<int,string> b = delegate ( int a, string b )
{
Console.WriteLine(a);
Console.WriteLine(b);
};
b(100,"NicolePotter");
有返回值
有返回值类型是string类型。、
Func<string> c = delegate ()
{
return "Nicole Potter";
};
Console.WriteLine(c());
一般情况会作为函数参数传递或者作为函数的返回值
4.匿名函数的缺点
添加到委托或事件容器中后,不记录无法单独移除。没有名字无法移除,只能清空。