shu*_*ade -1 c++ vector push-back
预期输出是: 1 2 3 4,如果我们取消注释提到的执行推回操作的行并运行代码,预期输出仍然是 1 2 3 4。但是猜猜它完全不同。运行一下你就知道了。为什么会发生这种情况?
#include <iostream>
#include<vector>
using namespace std;
int main()
{
int k=2;
vector<int> v;
vector<int> :: iterator itr;
v.push_back(1);
v.push_back(2);
v.push_back(3);
v.push_back(4);
v.push_back(5);
v.push_back(6);
v.push_back(7);
auto a=v.begin();
for(int i=0;i<4;i++){
cout<<*a<<" ";
//v.push_back(anynumber); ----------------------------------->This line
a++;
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)