插入2d向量的特定位置

时间:2012-04-12 11:05:29

标签: c++ vector

我有一个代表2d网格的2d向量;所以grid[0][2]例如。我需要'插入' - 这里可能不是正确的词。在特定位置的矢量说grid[3][2]肯定会有grid[0][0]但是当我需要时插入grid[3][2]grid[0][0]以外可能没有任何内容,之后需要有空格。有没有办法做到这一点?

感谢您的帮助。

ps:我应该注意到矢量的大小是未知的(它们会随着时间的推移而增长)

1 个答案:

答案 0 :(得分:2)

我不确定我是否正确理解您的要求,但是:

std::vector<std::vector<int>> grid(4);  // 4 rows

grid[3].resize(3)  // resize 4th row

grid[3][2] = 42;

然后你的2D网格会“看起来”那样:

 |
 - 
 |
 -                  <---  3 empty rows
 |
 --------------
 | 0 | 0 | 42 |
 --------------

您可以稍后自由调整行的大小。请注意,有0行,但是还没有[0] [0]元素,你必须自己添加它。