约束的语法形式
1 public T Get<T>(T t) where T:约束 2 { 3 4 return t; 5 6 }
约束类型必须是接口、非密封类或类型参数
约束可以叠加
约束类型:
where T:基类 基类约束
where T:interface 接口约束
where T:class 引用类型约束,类里面使用T必须是引用类型
where T:struct 值类型约束,类里面使用T必须是值类型
where T:new() 无参构造函数约束