#include <vector>
int main()
{
 int a[ ] = {0,1,2,3,4};
 std::vector<int> ivec;
 ivec.assign(std::begin(a),std::end(a));
 auto iter = ivec.begin();
 iter = ivec.insert(iter,*iter++);
 
  return 0;
}
为什么插入的结果是ivec = [6](0,-17891602,1,2,3,4)?
解决方案:20分
原因是insert第二个参数是引用传递的,赋值时迭代骂已经无效了(原因是元素要往后移)