源于C++ primer。
大清早的, 无意中看到C++ Primer上的一个关于在一vector上插入元素的例子捉急。 看了一下, 基本上是关于插入引起迭代器失效的应用。
下面, 摘自C++primer 中文版第309页习题9.3.1的练习题。
假定iv是一个int的vector, 下面程序存在什么错误? 如何修改
vector<int>::iterator iter = iv.begin(), mid = iv.begin() + iv.size() / 2;
while(iter != mid)
if(*iter == some_val)
iv.insert(iter, 2 * some_val);