在C#中是否可以创建未指定的泛型类型的数组?与此类似:

ShaderParam<>[] params = new ShaderParam<>[5];
params[0] = new ShaderParam<float>();

还是由于C#的强类型输入而根本不可能?

最佳答案

这是不可能的。如果泛型类型在您的控制之下,则可以创建非泛型基本类型,例如

ShaderParam[] params = new ShaderParam[5]; // Note no generics
params[0] = new ShaderParam<float>(); // If ShaderParam<T> extends ShaderParam

我的猜测是,这是您无法控制的XNA类型。

10-04 23:42