我不认为这可以在 C# 中完成,但发布它只是为了确保。这是我的问题。我想在 C# 中做这样的事情:
var x = 10;
var l = new List<typeof(x)>();
或
var x = 10;
var t = typeof(x);
var l = new List<t>();
但这当然行不通。尽管这应该不是问题,因为类型 t 在编译时已解析。我知道这可以通过反射来解决,但由于类型在编译时是已知的,因此使用反射就太过分了。
最佳答案
public static List<T> CreateCompatibleList<T> (T t)
{
return new List<T> () ;
}
var x = 10 ;
var l = CreateCompatibleList (x) ;
关于c# - C# 中具有类型参数的泛型类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1358577/