![]() |
1
39
有一些常见的用例需要传递(或存储)稍后执行的代码块。最常见的是事件侦听器。信不信由你,以下代码使用Java中的lambda-ish构造:
|
![]() |
2
9
我认为C#中的lambdas是完成委托的一条非常方便的捷径。将代码放在使用它的地方比在别处搜索委托定义更具可读性。 |
![]() |
3
4
语法糖。
|
![]() |
4
2
Lambdas允许您编写更少冗长、更具表现力的代码。例如 list comprehensions ... 顺便说一句,目前正在探索向Java添加闭包的可能性,同时有必要使用匿名类(丑陋)。 |
![]() |
5
1
C#并不是为某一特定的语言设计流派追求纯粹性(不像Java,Java是由Smalltalker设计的纯OO语言)。C#对所有人来说都是千方百计的,而且非常擅长。C#的基础是将各种编程风格的精华汇集到一种高质量、支持良好的语言中。这包括过程式、面向对象、函数式、动态、逻辑等编程风格。显然,到目前为止,它还没有太多的动态或逻辑编程风格,但很快就会出现(C#4.0附带的动态编程)。 |
![]() |
6
1
对于C#,lambda在内部用于实现LINQ。见文章 The Evolution Of LINQ And Its Impact On The Design Of C# |
![]() |
7
0
LAMBDA允许更多的可读代码,因为它们允许操作被定义为更接近使用点,而不是像当前的C++方法使用的函数对象,其定义有时远未使用。(这不包括一些boost库)。我认为lambdas的关键点在于,它们允许更简洁、更易于理解的代码。 |
![]() |
8
-2
|
![]() |
A B · C#Excel自动调整列避免长文本时出错 3 月前 |
![]() |
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 3 月前 |
![]() |
Aycon · 在工厂方法中释放部分创建的对象的正确方法是什么? 3 月前 |
|
Sei · Avalonia/WPF将路由器传递到控制模板 4 月前 |