回答

收藏

C# 的正确版本号是什么?

技术问答 技术问答 76 人阅读 | 0 人回复 | 2023-09-11

C# 的正确版本号是什么?什么时候出来?为什么我找不到关于它的信息?*C# 3.5*答案是什么?3 y  M3 p% M1 F( ]9 n
这个问题主要是帮助使用不正确的版本号(例如C# 3.5*    )搜索答案的人。希望任何没有使用错误版本号找到答案的人都能找到答案此*问题,然后用正确的版本号再次搜索。$ m- S" U; d& p7 L/ r6 O7 _- A
                                                               
/ O0 h; d# [. O% {    解决方案:                                                               
, ?2 X3 H+ i$ y1 Q5 z                                                                C#语言版历史:以下是写这篇文章时已知的 C# 版本:4 l. H+ x& j" ?& T
C# 1.0与 .NET 1.0 和 VS2002年 一起发布(2002年 1 月)
. p. o% p, k& e/ lC# 1.2(很奇怪);和 .NET 1.1 和 VS2003(2003年 4 月)一起发布。第一个调用 s 的版本Dispose实现IEnumerator了IDisposable. 其他小功能。
/ J+ x" i1 B2 n- P1 R) nC# 2.0与 .NET 2.0 和 VS2005 共同发布(2005年 11 月)。主要新特点:泛型、匿名方法、空型和迭代块
0 x, K2 Q  c) `C# 3.0随 .NET 3.5 和 VS2008年(2007年 11 月)共同发布。主要新特点:lambda 表达式,扩展方法,表达式树,匿名类型,隐形类型 ( var) 和查询表达式
+ P: l# C1 Q8 J9 F' u) w; @C# 4.0随 .NET 4 和 VS2010年(2010年 4 月)共同发布。主要新特点:后期绑定(dynamic)、委托和委托和接口变化COM支持、命名参数、元组数据类型和可选参数/ j$ X: y8 n4 ?: c1 J  b3 T& B
C# 5.0随 .NET 4.5 和 VS2012年 共同发布(2012年 8 月)。主要特点:异步编程和调用信息属性。重大变化:循环变量关闭。1 C8 l2 R# x( C8 ]
C# 6.0与 .NET 4.6 和 VS2015 共同发布(2015年 7月)。Roslyn特点:自动实现属性的初始化器,使用指令引导静态成员、异常过滤器、元素初始化器,awaitincatch和finally,集合初始化器中的扩展Add方法。* F/ A% f4 S$ S
C# 7.0随 .NET 4.7 和 VS2017年(2017年 3 月)共同发布。主要新特点:元组、ref locals 和 ref return、模式匹配(包括基于模式的 switch 语句),内联out参数声明、本地函数、二进制文本、数字分隔符和任意异步返回。
# [% f- Q# g, j0 A. D1 mC# 7.1随 VS2017 v15.3(2017年 8 月)共同发布。新特点:async main、推断元组成员名称、默认表达式和与泛型匹配的模式。$ C0 Y( d. c8 u6 k. M8 `
C# 7.2随 VS2017 v15.5(2017年 11 月)共同发布。新功能:私有受保护访问修饰符,Span、又称内部指针,又称 stackonly 结构等内容。! g  d# ~& W. Y& w' a1 K5 o/ X/ z
C# 7.3随 VS2017 v15.7(2018年 5 月)共同发布。新特点:枚举、委托和unmanaged一般类型约束。ref重新分配。不安全改进:stackalloc初始化、未固定索引fixed自定义缓冲区fixed句子。提高重载分辨率。查询中的初始化程序和表达式变量。==并!=为元组定义。自动属性的支持字段现在可以由属性定位。
9 t8 o3 q" x" o- D9 X5 C/ kC# 8.0随 .NET Core 3.0 和 VS2019 v16.3(2019年 9 月)共同发布。主要新特点:引用类型、异步流、索引及范围、只读成员、使用声明、默认接口方法、静态局部函数、插值逐字字符串增强。
' T3 n$ h- r( @) nC# 9.0随.NET 5.0和 VS2019 v16.8(2020年 11 月)共同发布。主要新特点:init-only 属性,记录,with-expressions、数据类、位置记录、顶级程序、改进模式匹配(简单类型模式、关系模式、逻辑模式)、改进目标类型(目标类型)new表达式、目标类型、协变返回。次要功能:放松ref和partial修饰符的排序、参数空检查、lambda 丢弃参数、native ints、本地函数属性、函数指针、静态 lambda、扩展GetEnumerator、模块初始化器和扩展部分。8 u* L, s; t4 ~6 k( F
C# 10.0与 .NET 6.0 共同发布(2021年 11 月)。主要新特点:记录结构、结构无参数结构函数、插值字符串处理程序、全局using命名空间声明、扩展属性模式、常量插值字符串、解构中的混合赋值和声明、单个方法的异步构建器(通过属性)、参数CallerArgumentExpression属性,增强#line编译指示。
针对OP的问题:C# 的正确版本号是什么?什么时候出来?为什么我找不到 C# 3.任何答案5 ?, Y& k* H3 x5 K( ~$ X5 Q# T, P) _
没有像 C# 3.5 这样的东西——这里混淆的原因是 C# 3.0 存在于 .NET 3.5 中。然而,语言和框架是 的独立版本- 就像 CLR它在 2.0 版中适用于 .NET 2.0 到 3.5,.NET 4 引入 CLR 4.尽管有服务包。.NET 4.5 中的 CLR 有各种各样的改进,但版本控制不清楚:在某些地方能被称为 CLR 4.例如,这个 MSDN 页面曾经引用过),但是应该Environment.Version属性仍然报告 4.0。xxx。
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则