null是引用类型中值的一种
结构式值类型数据储存在栈中,所以不能使用NULL作为它的值
但是.NET提供了一种可以使结构型变为NULL的方法,在定义结构型数据时,只需要在类型后添加?即可,例如
普通结构型:Point [] points = new Point[1]; points[0] = new Point();
可空结构型::Point? [] points = new Point?[0]; points[0] = null;
实际上
Point? [] 等同于一个泛型包装类
System.Nullable<Point> [] 类型
System.Nullable<T>是一个全新的数据类型,主要包含一个Value属性,该属性为一个值类型数据,如果值类型为null那么整个System.Nullable<T>对象为null
T不可以使用非值类型数据
温馨提示:答案为网友推荐,仅供参考