default 关键字
之所以会用到default关键字,是因为泛型需要在不知道类型参数为值类型还是引用类型的情况下,为对象实例设置默认值。
class TestDefault<T>
{
public T foo()
{
return default(T);
}
}
默认值参考
// 值类型
default(int) // 0
default(bool) // false
default(enum) // 0对应的enmu
//引用类型null
default(string) // null
default(object) // null
default(datetime?) // null