给定一个未知引用或值类型的实例,有没有办法测试实例是否包含该类型的默认值?我设想这样的事情......
bool IsDefaultValue(object value)
{
return value == default(value.GetType());
}
当然,这不起作用,因为GetType返回运行时类型,但我希望有人可以建议类似的技术。感谢。
答案 0 :(得分:9)
static bool IsDefaultValue<T>(T input)
{
return Object.Equals(input, default(T));
}
注意:使用泛型类型T不能使用==
进行相等。