【发布时间】:2014-05-25 17:49:08
【问题描述】:
我想初始化一个二维数组,它的每行元素数不是恒定的。
类似:
int a[][] = {{1,2,3}, {4,5}};
我如何做到这一点?
【问题讨论】:
-
在 C 中,你不能!!!!!!!!!
-
你刚刚做到了。这些值可以更改,因为您将它们声明为不是
const。如果你想改变元素的数量,那么你必须使用另一个数据结构,比如vector。
我想初始化一个二维数组,它的每行元素数不是恒定的。
类似:
int a[][] = {{1,2,3}, {4,5}};
我如何做到这一点?
【问题讨论】:
const。如果你想改变元素的数量,那么你必须使用另一个数据结构,比如vector。
您无法使用原始二维数组来实现这一点。您可以做的是使用包含其他向量的向量。例如,在您的情况下,您可以这样做:
std::vector<std::vector<int>> a = { {1, 2, 3}, {4, 5} };
【讨论】: