宣布未知维度的二维数组的最佳方法是什么?

时间:2014-12-12 00:25:26

标签: c++ c++11

我需要声明并存储一个二维字符串数组。我事先无法知道两个尺寸的大小。 C ++要求我知道至少第二个数组的大小,对吗?如果是这样,最好的方法是什么?

3 个答案:

答案 0 :(得分:4)

使用std::vector。事实上,即使你知道尺寸,你也应该这样做,除非你有充分的理由不这样做。

答案 1 :(得分:4)

正如其他答案所述,std::vector<>是适合该工作的集合。

要声明字符串的2D矢量,请使用:

std::vector<std::vector<std::string>> strings;

填充后,您可以使用熟悉的下标符号来访问元素:

const std::string& at(strings[i][j]);

答案 2 :(得分:3)

不要使用&#39; raw&#39;数组,因为你不知道大小。一种可能性是使用标准容器std::vector