net 2.0支持泛型类、泛型方法
在使用泛型方法时,我们经常需要在方法中创建T类型的实例对象,例如:
class a {
T GetObject<T>() where T : new() {
return new T();
}
}
但如果调用时是这种方式:
class b {
T1 Get<T1>() {
return GetObject<T1>();
}
}
就会出错,难道我们必须使用实际的类型来引用GetObject吗?
不必,我们可以把GetObject方法改为:
class a {
T GetObject<T>() {
return Activator.CreateInstance<T>();
}
}
这种形式,就可以了。
在使用泛型方法时,我们经常需要在方法中创建T类型的实例对象,例如:
class a {
T GetObject<T>() where T : new() {
return new T();
}
}
但如果调用时是这种方式:
class b {
T1 Get<T1>() {
return GetObject<T1>();
}
}
就会出错,难道我们必须使用实际的类型来引用GetObject吗?
不必,我们可以把GetObject方法改为:
class a {
T GetObject<T>() {
return Activator.CreateInstance<T>();
}
}
这种形式,就可以了。