C#的可空类型与不可空类型

null:为空,表示产量没有指向任何对象,

如:string = null;

         int a = null;//是错的

但可以这样,在类型后面加一个问号。

int? a = null;//这就是正确的,是一种特殊的int类型

int b = 12;

加了问号后不能直接与int转换

int b = a;//这是错误的

int b = (int)a;//强制类型转换后,是正确的,但必须保证

                      //a不为null

总结:不为空数据类型,在后面加上问号后就可以为null,

             但他是一种特殊的类型

原文地址:https://www.cnblogs.com/tommy-huang/p/4309575.html