请问 C# 6 语言规范在哪里?
截至撰写时间(2016年5月),微软尚未完成C#6规范的更新。与此同时,我在这里发布了微软最新的C#6规范草案:https://github.com/ljw1004/csharpspec/blob/gh-pages/README.md
这个当前的草案已经快要完成了,只剩下几个待办事项和检查。(这个版本已经被转换成了github+markdown格式,但它也有链接可以下载DOCX和PDF格式的规范,以及一个链接可以下载ANTLR格式的语法)。
如果想了解从C#5到C#6所有规范更改的完整列表,请参阅拉取请求:https://github.com/ljw1004/csharpspec/pull/1/files
(为什么微软还没有正式发布C#6规范?因为正在进行与ECMA的对齐工作,这需要时间;发布C#6规范现在似乎有些浪费力气,之后仍会有与ECMA对齐的C#6规范版本推出)。
when
关键字的详细信息吗?我只找到了一些零碎的资料,而且更多是关于异常过滤作为一般主题的内容,而不是关于关键字的详细信息。 - David Pine对于C# 6.0,没有像以前版本那样的规范。
最接近的是CodePlex上Roslyn的设计笔记(并向GitHub迁移)。
以下是C#功能列表:
https://roslyn.codeplex.com/wikipage?title=Language%20Feature%20Status&referringTitle=Documentation
这里有一个空值传播运算符的笔记:
https://roslyn.codeplex.com/discussions/540883
自从语言设计团队转移到GitHub后,您可以继续关注Roslyn存储库上的Design Notes筛选器,以了解C# 7.0的出现:
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC#\Specifications\1033\CSharp Language Specification.docx
(其中的14.0
指的是 VS2015)只是旧版 C# 5 规范的副本,而不是反映 VS2015 和 C# 6“实际情况”的新规范。 - Jeppe Stig Nielsen