C#2.0,3.0和4.0中的新功能列表

时间:2010-07-04 14:19:45

标签: c# c#-3.0 c#-4.0 c#-2.0

我在.NET 1.1项目上工作了很长时间,而且我被C#1.0困住了,现在我想赶上最新最好的。

Google在C#v2.0中返回了很多有关新功能的信息,但对于版本3和版本4,我只找到了部分信息。

互联网上是否存在某些列表,列出了在v2.0,v3.0和v4.0中C#中引入的所有新功能?

4 个答案:

答案 0 :(得分:23)

为我自己的书完整插件,但希望不是无偿的:抓住second edition of C# in Depth的早期访问版本。它跳过C#1,但详细介绍了C#2,3和4的每个功能。

如果您只想要一个功能列表,请参阅附录C:

C#2.0:

C#2的主要功能是泛型,可空类型,匿名方法以及其他与委托相关的增强和迭代器块。此外,还引入了一些较小的功能:部分类型,静态类,具有不同访问修饰符的属性,用于getter和setter,名称空间别名,pragma指令和固定大小的缓冲区。

C#3.0:

C#3主要针对LINQ构建,尽管许多功能在其他地方都很有用。 自动属性,数组和局部变量的隐式类型,对象和 集合初始值设定项和匿名类型都在XREF ch8章节中介绍。 Lambda表达式和表达式树扩展了 与版本2.0中的委托相关的进展,扩展方法提供了查询表达式的最后一个成分。部分方法仅在C#3中添加,尽管部分类型本身在C#2中。正如Marc在评论中指出的那样,泛型类型推断在C#3中得到了相当大的推动。

C#4.0:

C#4.0有一些旨在实现互操作性的功能,但不具备相同功能 C#3.0的一心一意。同样,两者之间存在明显的分歧 “小”特征(命名参数,可选 参数,更好的COM互操作,通用方差)和动态的巨大特征 打字。

我为C# 2提供了“bluffers指南”,为C# 3提供了另一个指南,但我还没有完成C#4的等效指导,但我很害怕。

答案 1 :(得分:8)

答案 2 :(得分:3)

从1.1到2.0(IMO)的最大变化是introduction of generics。从2.0开始,泛型也是许多其他.NET技术的基础。我建议你开始学习,真正了解仿制药。

答案 3 :(得分:2)

  • C#3.0:
  

隐式输入的局部变量
  匿名类型
  扩展方法
  对象和集合初始化器
  Lambda表达式
  查询表达式
  表达树