动态地向数组添加一个新的维度

3
我想在我的数组即Matrix类中根据用户输入在构造函数中添加新的维度。
例如:
var matrix = new Matrix<int>(3,2,4); // is 3 dimensional array 

这是我的Matrix类:

class Matrix<T>
{
    private T[][] mArray;
    private readonly int mCols;
    private readonly int mRows;       

    public Matrix(params int[] args)
    {
        //here is what I ve tried.
        /*
        mCols = args[0];
        mRows = args[1];

        mArray = new T[mCols][];

        for (int i = 0; i < mCols; i++)
            mArray[i] = new T[mRows];
        */

        // how to create a multidimensional array based on "args" length?

    }
}

问题:如何根据“args”的长度创建多维数组?

1个回答

3

通过查看 这里 找到了它。

Array.CreateInstance(typeof(YOUR_TYPE), params)

示例:

var arr = Array.CreateInstance(typeof(int), 3, 2, 4); // 创建一个三维数组


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接