学了N多久的委托,终于告一段落,现在可以开始lambda的学习之旅了,但是在说lambda之前必须先说下C#中的匿名方法.
1、匿名方法
下面是一个字符串拼接的程序,用到了委托,代码如下:
class...跳转到该匿名方法的外部,反之依然,外部跳转到里面也不能
b、在匿名方法中不能访问不安全的代码,另外也不能在匿名方法外部使用的ref或者out参数,但是可以使用在匿名方法外部定义的其他参数
2、Lamdba表达式...匿名方法虽然好,但是从C#3.0之后,推出了更好的Lamdba表达式,只要有委托参数的地方,就可以使用Lamdba表达式,现在改编上面的匿名方法用Lamdba表达式:
class Program...闭包这个很多编程语言中都有,Lamdba表达式能访问表达式外部的变量就是通过闭包来实现的。...func(2));
Console.ReadLine();
}
}
输出:8和9并不是我们想的7和8,
原因在编译器处理外部变量的方式:对于lamdba表达式