#include <bits/stdc++.h>
using namespace std;
int main()
{
vector<int> a = {1, 2, 3};
vector<int> b;
copy(a.begin(), a.end(), back_inserter(b));
copy(b.begin(), b.end(), ostream_iterator<int>(cout, " "));
cout << endl;
copy(a.begin(), a.end(), back_inserter(b));
copy(b.begin(), b.end(), ostream_iterator<int>(cout, " "));
cout << endl;
copy(a.begin(), a.end(), b.begin() + 1);
copy(b.begin(), b.end(), ostream_iterator<int>(cout, " "));
cout << endl;
return 0;
}
使用back_inserter
可以扩充空间,在原数据后添加数据,不会影响原数据。不使用back_inserter
则是替换原数据,需要保证当前容器空间足够。