C# 的正确版本号是多少?什么时候出来的?为什么我找不到关于 的任何答案C# 3.5 ?
这个问题主要是为了帮助那些使用不正确的版本号搜索答案的人,例如 C# 3.5 .希望任何未能找到错误版本号的答案的人都会找到这个问题,然后使用正确的版本号再次搜索。
最佳答案
C#语言版本历史:
这些是 versions of C#在撰写本文时已知:
Dispose
在 IEnumerator
s 实现了 IDisposable
.其他一些小功能。 var
)、查询表达式 dynamic
)、委托(delegate)和接口(interface)通用变量、更多的 COM 支持、命名参数、元组数据类型和可选参数 await
在 catch
和 finally
, 分机 Add
集合初始值设定项中的方法。 out
parameter declarations , local functions , binary literals, digit separators , 和 arbitrary async returns . unmanaged
generic type constraints . ref
重新分配。不安全的改进:stackalloc
初始化,未固定索引 fixed
缓冲区,自定义 fixed
声明。改进了重载分辨率。初始值设定项和查询中的表达式变量。 ==
和 !=
为元组定义。现在可以通过属性来定位自动属性的支持字段。 new
表达式、目标类型 ??
和 ?
)、协变返回。小功能:放宽 ref
的订购和 partial
修饰符、参数空检查、lambda 丢弃参数、 native int
s、局部函数的属性、函数指针、静态 lambda、扩展 GetEnumerator
, 模块初始值设定项,扩展部分。 回应 OP 的问题:
What are the correct version numbers for C#? What came out when? Why can't I find any answers about C# 3.5?
没有像 C# 3.5 这样的东西 - 这里混淆的原因是 C# 3.0 存在于 .NET 3.5 中。然而,语言和框架的版本是独立的 - 就像 CLR 一样,它是 2.0 版,用于 .NET 2.0 到 3.5,.NET 4 引入了 CLR 4.0,尽管有服务包。 .NET 4.5 中的 CLR 有各种改进,但版本控制尚不清楚:在某些地方,它可能被称为 CLR 4.5(例如 this MSDN page 用来指代它),但
Environment.Version
属性仍然报告 4.0.xxx。截至 2017 年 5 月 3 日,C# 语言团队在其 GitHub 存储库中创建了 C# 版本和功能的历史记录:Features Added in C# Language Versions .还有a page that tracks upcoming and recently implemented language features .
关于c# - C# 的正确版本号是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/247621/