我在装有 Visual Studio 2017 的 Windows 10 机器上的 .NET 项目中编写了一些代码。目标框架是 4.5.2。并且使用的 C# 版本是默认的(在 "C:\Windows\Microsoft.NET\Framework\v4.0.30319" 下运行 csc 工具显示 C# 5。我使用了 C# 6 中的一个功能。Monadic null 检查(https://damieng.com/blog/2013/12/09/probable-c-6-0-features-illustrated)。并且编译器不会抱怨它。这是正常的行为还是我错过了什么?编译器不应该抱怨吗?
2 回答

繁星coding
TA贡献1797条经验 获得超4个赞
您缺少的是正在使用的 C# 编译器不是您找到的 csc.exe。Visual Studio 带有自己的 C# 编译器,它支持 C# 6(以及更高版本,具体取决于您安装的 VS 的确切版本)。

HUX布斯
TA贡献1876条经验 获得超6个赞
C# 语言版本由 Visual Studio 决定,而不是由 .Net Framework 决定。
只要您的 Visual Studio 版本支持 C# 版本,您就不会遇到任何错误。
在 Visual Studio 中配置语言版本:https ://docs.microsoft.com/en-us/dotnet/csharp/language-reference/configure-language-version
- 2 回答
- 0 关注
- 254 浏览
添加回答
举报
0/150
提交
取消