哪个版本的C#编译器引入了可空类型?

哪个版本的C#编译器引入了可空类型?,c#,nullable,C#,Nullable,我的C#代码是在比我自己的开发环境更旧的C#(4.0.30319.34209)版本中运行的。我想知道我对可空类型的使用是否适用于这个旧版本的C#。有人知道C#nullable类型是在什么版本中引入的吗?我的“Google fu”什么也没想到。可空类型是中的§19.5,所以:.NET 2.0和C#2.0(它不可能更早,因为它依赖于“泛型”,它肯定是2.0)可空类型是中的§19.5,所以:.NET 2.0和C#2.0(它不可能更早,因为它依赖于“泛型”,它肯定是2.0)C#2.0引入了可空类型,允许

我的C#代码是在比我自己的开发环境更旧的C#(4.0.30319.34209)版本中运行的。我想知道我对可空类型的使用是否适用于这个旧版本的C#。有人知道C#nullable类型是在什么版本中引入的吗?我的“Google fu”什么也没想到。

可空类型是中的§19.5,所以:.NET 2.0和C#2.0(它不可能更早,因为它依赖于“泛型”,它肯定是2.0)

可空类型是中的§19.5,所以:.NET 2.0和C#2.0(它不可能更早,因为它依赖于“泛型”,它肯定是2.0)

C#2.0引入了可空类型,允许您将空值分配给值类型变量。可以使用nullable声明可为null的类型,其中T是一个类型

从这里复制:

C#2.0引入了可空类型,允许您将空值分配给值类型变量。可以使用nullable声明可为null的类型,其中T是一个类型

从这里复制:

这里是C版本的历史: 它指出可空类型是在C#v2.0中引入的。希望有帮助。

以下是C版本的历史: 它指出可空类型是在C#v2.0中引入的。希望对您有所帮助。

从,
Nullable
应用于:

.NET Core
2.2 2.1 2.0 1.1 1.0

.NET Framework
4.8 4.7.2 4.7.1 4.7 4.6.2 4.6.1 4.6 4.5.2 4.5.1 4.5 4.0 3.5 3.0 2.0

.NET Standard
2.0 1.6 1.5 1.4 1.3 1.2 1.1 1.0

Xamarin.Android
7.1

Xamarin.iOS
10.8

Xamarin.Mac
3.0
从,
Nullable
应用到:

.NET Core
2.2 2.1 2.0 1.1 1.0

.NET Framework
4.8 4.7.2 4.7.1 4.7 4.6.2 4.6.1 4.6 4.5.2 4.5.1 4.5 4.0 3.5 3.0 2.0

.NET Standard
2.0 1.6 1.5 1.4 1.3 1.2 1.1 1.0

Xamarin.Android
7.1

Xamarin.iOS
10.8

Xamarin.Mac
3.0

C#2.0
我相信。这不是你提供的C#(语言)版本。你不是根据你需要的目标版本编译代码吗?旁注:你需要非常清楚你的命名-C#版本和.NET版本没有很强的联系-标题询问.NET版本,但身体询问语言版本;我相信这些都不必是相关的
C#2.0
。这不是你提供的C#(语言)版本。你不是根据你需要的目标版本来编译你的代码吗?旁注:你需要非常清楚你的命名法-C#版本和.NET版本没有很强的联系-标题问的是.NET版本,但身体询问语言版本;这些不必相互关联