.NET发展史
C# 1.0版
随 Visual Studio .NET 2002 一起发布
主要功能:类 结构 接口 事件 属性 委托 运算符和表达式 语句 特性
C# 1.2版
Visual Studio .NET 2003
它对语言做了一些小改进。 最值得注意的是,从此版本开始,当 IEnumerator实现IDisposable 时,foreach 循环中生成的代码会在 IEnumerator上调用 Dispose
C# 2.0版
Visual Studio 2005
主要功能:泛型 分部类型 匿名类型 可以为null的值类型 迭代器 协变和逆变
C# 3.0版
Visual Studio 2008
完整的语言功能是在 .NET Framework 3.5 版中发布的,此版本标示着 C# 发展过程中的重大更改。 C# 成为了真正强大的编程语言。
主要功能:自动实现的属性 匿名类型 查询表达式 Lambda表达式 表达式树 扩展方法 隐式类型本地变量 分布方法 对象和集合初始值预定项
C#4.0版
Visual Studio 2010
有趣的新功能:动态绑定 命名参数/可选参数 泛型协变和逆变 嵌入的互操作类型
C# 5.0版
Visual Studio 2012
对此版本中所做的几乎所有工作都归入另一个突破性语言概念:适用于异步编程的 async
和 await
模型。
主要功能:异步成员 调用方信息特性
C# 6.0版
Visual Studio 2015 一起发布
使得 C# 编程更有效率的小功能:静态导入 异常筛选器 自动属性初始化表达式 Expression bodied 成员 Null 传播器 字符串内插 nameof 运算符 其他新功能包括:
新功能:索引初始化表达式 Catch/Finally 块中的 Await 仅限 getter 属性的默认值
C# 7.0版
Visual Studio 2017
部分新增功能:
Out 变量
元组和析构函数
模式匹配
本地函数
已扩展 expression bodied 成员
Ref 局部变量和返回结果
弃元
二进制文本和数字分隔符
引发表达式
C#8.0版
C# 8.0 版是专门面向 .NET C# Core 的第一个主要 C# 版本。 一些功能依赖于新的 CLR 功能,而其他功能依赖于仅在 .NET Core 中添加的库类型。
功能和增强功能:
Readonly 成员
默认接口方法
模式匹配增强功能:
Switch 表达式
属性模式
元组模式
位置模式
Using 声明
静态本地函数
可处置的 ref 结构
可为空引用类型
异步流
索引和范围
Null 合并赋值
非托管构造类型
嵌套表达式中的 Stackalloc
内插逐字字符串的增强功能
![](https://img2020.cnblogs.com/blog/1918784/202107/1918784-20210704151819419-1640747953.png)