【发布时间】:2017-09-19 18:36:38
【问题描述】:
我觉得我真的应该知道这个问题的答案……哈哈!!
为什么在泛型列表的函数中返回类型列表会引发编译错误?
示例代码:
public List<T> Method<T>() where T : new()
{
var items = new List<Foo>();
return items;
}
【问题讨论】:
-
应该是:var items = new List
() -
因为没有什么可以保证 Foo 可以转换为 T。
-
@Trioj 即使可以,它仍然行不通。
-
@sTrenat - 出于同样的原因,这仍然行不通。
-
这只是代码中某处的问题还是实际问题?如果你想返回
Foo,那么不要使用泛型返回类型。
标签: c# .net generics collections