我想知道这是什么?我认为这种通用方法。它有一个与“哪里”有关的部分。那个怎么样?我也听说过通用类。我如何学习这些你能推荐一篇文章吗?
protected T Item<T>() where T : class
{
return GetDataItem() as T ?? default(T);
}
该where
子句称为“通用约束”。在这种情况下,where T: class
规定 T 必须是引用类型(即,不是 a struct
)。
有关通用约束的更多信息:http: //msdn.microsoft.com/en-us/library/d5x73970.aspx 和通用类:http: //msdn.microsoft.com/en-us/library/sz6zd40f.aspx
编辑
在您提供的代码段中,需要约束,因为否则空合并运算符 (??) 将没有意义,因为值类型 ( struct
s) 不能为空。