"where T : X, new()" or "where T : new(), X&q
本文关键字:quot new where or | 更新日期: 2023-09-27 18:17:17
下面两个泛型方法的区别是,在第一个方法中new()是先写的,Book是最后写的,而在最后一个方法中反之亦然。
public static void Save<T>(T target) where T : new(), Book
{
....
}
和
public static void Save<T>(T target) where T : Book, new()
{
....
}
区别是第一个不编译。
从MSDN:
where T : new()
类型参数必须有一个公共无参数构造函数。当与其他约束一起使用时,new()约束必须最后指定。