什么是类定义中的<t>?</t>

时间:2012-12-10 00:17:06

标签: c#-4.0 generics

我们在这行代码中告诉编译器究竟是什么?

public abstract class RepositoryBase<T> where T:class

我们是说当我们创建一个继承自RepositoryBase的对象时,该对象必须在构造函数中使用一个类,否则会出现编译错误?

1 个答案:

答案 0 :(得分:3)

这是说当你从RepositoryBase<T>继承时,你指定的类型T必须是某种类型的类(或接口等,但不是值类型)。例如RepositoryBase<int>是非法的,不会编译:请参阅Constraints on Type Parameters (C# Programming Guide)