我想将一个元素替换到 vector 的特定位置,我可以使用赋值吗:
// vec1 and 2 have the same length & filled in somehow
vec1;
vec2;
vec1[i] = vec2[i] // insert vec2[i] at position i of vec1
或者我必须使用 insert():
vector<sometype>::iterator iterator = vec1.begin();
vec1.insert(iterator+(i+1), vec2[i]);
最佳答案
vec1[i] = vec2[i]
将 vec1[i]
的值设置为 vec2[i]
的值。什么都没有插入。您的第二种方法几乎是正确的。而不是 +i+1
你只需要 +i
v1.insert(v1.begin()+i, v2[i])
关于c++ - 将元素替换为 vector 的特定位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6726805/