0

我有一个代表二维网格的二维向量;例如grid[0][2]。我需要“插入”-这里可能不是正确的词。一个特定位置的向量说grid[3][2]肯定会有一个grid[0][0],但是当我需要插入时,grid[3][2]它之前可能没有任何东西,除了grid[0][0]以后需要在两者之间留出空间。有没有办法做到这一点?

谢谢您的帮助。

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

4

1 回答 1

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] 元素,您必须自己添加它。

于 2012-04-12T11:24:59.960 回答