我希望在运行时创建可变长度的多维数组。
具有每个维度长度的输入 ->数组。维数=输入数组的长度。
输出 ->变量维数组。
示例:
输入-> var lengths = new [] {3,4,5}
预期输出-> var arr = new string[3,4,5]
如何在没有反射和反射的情况下做到这一点?
发布于 2013-01-12 10:54:35
System.Array类中有这样的方法:
public static Array CreateInstance(
Type elementType,
int[] lengths
)有关GetLength()和GetUpperBound()的讨论,请参阅GetLength()
但是请注意,因为您在编译时不知道维度,所以不能使用熟悉的a[i,j,k]语法。所有访问都将类似于int[] indices = ...; object x = a.GetValue(indices);
https://stackoverflow.com/questions/14292466
复制相似问题