c ++ vector insert begin

时间:2014-01-30 23:03:08

标签: c++ vector

我不知道如何使用向量的insert方法,我对这个简单的代码有一个问题:

#include <iostream>
#include <vector>

int main () {

std::vector<int> v1(3);
std::vector<int> v2(3);

for(int i = 0; i < 3; i++)
    v1[i] = i + 1;

for(int i = 0; i < 3; i++)
    v2[i] = i + 4;

for(int i = 2; i <= 0; i--)
    v1.insert(v1.begin(), v2[i]);

for(int i = 0; i < v1.size(); i++)
    std::cout << v1[i] << std::endl;

return 0;

}

为什么我的视频输出为1 2 3而不是4 5 1 2 3?

1 个答案:

答案 0 :(得分:1)

循环中的条件

for(int i = 2; i <= 0; i--)
    v1.insert(v1.begin(), v2[i]);

不正确。所以循环被跳过了。我想你的意思是

for(int i = 2; i >= 0; i--)
    v1.insert(v1.begin(), v2[i]);