我正在做一些Pluralsight训练。教师在接口中指定了几个函数声明,其中一个如下所示:
void Add<T>(T entity) where T : class;
所以正在使用泛型,数据类型是&#34; T&#34;,它声明了一个名为&#34; entity&#34;的参数。这是T型。我不明白该条款:
&#34;其中T:class&#34;
这是什么意思?
答案 0 :(得分:1)
答案 1 :(得分:1)
这称为通用约束。这意味着T的类型必须是一个类。
答案 2 :(得分:1)
确保泛型类型T属于类型。
因此,示例yourClass.Add<int>(2)
将显示编译时错误,因为int不是类/引用类型。