声明没有大小的第二个数组

时间:2012-06-25 08:30:28

标签: c++ arrays

如何在c ++中声明没有第一个大小的二维或多维数组?

class numeric 
{
    public:
    int int_array_numbers[][];
    ...
};

错误讯息: 作为多维数组的'int_array_numbers'的声明必须具有除第一个之外的所有维度的边界

2 个答案:

答案 0 :(得分:10)

你不能,C ++不支持VLA(可变长度数组)。

改为使用std::vector<std::vector<int> >

答案 1 :(得分:5)

您可以从两个参数声明您的类作为模板 像这样的东西

template <int N, int M>
class numeric 
{
public:
     int int_array_numbers[N][M];
...
};