如何插入STL向量中的特定位置?重新分配迭代器[REWRITTEN]
到目前爲止,我已經嘗試插入一個STL載體,像這樣:
someVector.insert(someVector.begin() + location, info);
這工作時,我插入序列物品,但是當我從載體中刪除一個項目,我想成爲能夠在該位置插入。但是,迭代器需要重新分配,因爲它會拋出「向量迭代器+偏移超出範圍」錯誤。 (我對C++迭代器相當陌生,所以我不完全確定「迭代器重新分配」是什麼,並且似乎無法找到一個好的解釋,所以如果你能解釋,請隨時!)我可以找到很多這些問題詢問迭代器何時需要重新分配,但不是最好的方式。或者,是否有不同的/更好的方式插入某個位置?
您需要使用不同的容器。如果你像這樣的潮流戰鬥,你需要重新審視你的假設。也許矢量不是合適的容器。 –
「重新分配」迭代器的含義並不清楚。 – aschepler