日期:2014-05-17  浏览次数:20857 次

C#菜鸟求解,这个代码是什么意思
public class BaseUserControl<T> : UserControl
where T : BaseController, new()
{

 protected readonly T Controller = new T();

}         

这个BaseUserControl<T> : UserControl
我知道是继承UserControl,但是后面的就不懂了,
比如where T : BaseController
new()
protected readonly T Controller = new T();

求大神解释下,灰常感谢

------解决方案--------------------
约束
------解决方案--------------------
public class BaseUserControl<T> : UserControl
 where T : BaseController, new()。

意思是你传入的T类型必须继承BaseController,并且是可以进行实例化的。

 protected readonly T Controller = new T();
  意思是构造一个只读的,作用域为本命名空间的T(你传入的类型)类型的对象。