将泛型类型限制定义为可为null的基元类型
本文关键字:类型 null 定义 泛型类型 | 更新日期: 2023-09-27 18:20:47
我可以定义一个具有可为null的基元数据类型的泛型类型吗。类似的东西
public class DataTypeHolder<T> :List<T> where T : struct
{
public DataTypeHolder()
{
}
public void DoubleValueWithNull()
{
var count = this.Count;
for (int from = 0; from < count; from++)
{
this.Add(null); //// **this is needed..but causing compilation error**
}
}
}
稍后这应该是可能的
DataTypeHolder<double?> d = new DataTypeHolder<double?>();
您必须这样定义您的类:
public class DataTypeHolder<T> :List<T?> where T : struct
与相同
public class DataTypeHolder<T> :List<Nullable<T>> where T : struct