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

时间:2018-12-14 13:58:53

标签: c# nullable

与我自己的开发环境相比,我的C#代码正在旧版本的C#(4.0.30319.34209)中运行。我想知道我是否可以使用可为空的类型在此旧版本的C#上运行。有谁知道引入哪个版本的C#可空类型?我的“ Google-fu”一无所获。

4 个答案:

答案 0 :(得分:3)

可空类型在C# 2.0 specification中为§19.5,因此:.NET 2.0和C#2.0(不可能更早,因为它取决于“泛型”,肯定是2.0)

答案 1 :(得分:2)

hereNullable到:

.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

答案 2 :(得分:0)

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

从此处复制:http://www.tutorialsteacher.com/csharp/csharp-nullable-types

答案 3 :(得分:0)

以下是C#版本的历史记录: https://docs.microsoft.com/en-us/dotnet/csharp/whats-new/csharp-version-history 它指出可空类型是C#v2.0中引入的。希望对您有所帮助。