Back_inserter, front_inserter, inserter
Insert iterators
////Insert Iterators
list<int> col;
for(int i = 1; i<=9; i++)
col.push_back (i);
vector<int> obj;
copy(col.begin (),col.end (),
back_inserter(obj));
for(vector<int>::iterator iter = obj.begin (); iter != obj.end (); ++iter)
cout<<*iter<<' ';
cout<<endl;
deque<int> deq;
copy(col.begin (),col.end (),
front_inserter(deq));
for(deque<int>::iterator iter = deq.begin (); iter != deq.end (); ++iter)
cout<<*iter<<' ';
cout<<endl;
set<int> s;
copy(col.begin (),col.end (),
inserter(s,s.begin ()));
for(set<int>::iterator iter = s.begin (); iter != s.end (); ++iter)
cout<<*iter<<' ';
cout<<endl;
Stream iterators
////stream_iterator
vector<string> col;
copy(istream_iterator<string>(cin),istream_iterator<string>(),
back_inserter(col));
sort(col.begin (),col.end ());
unique_copy(col.begin (),col.end (),
ostream_iterator<string>(cout,"\n"));
Reverse iterators
////reverse_iterator
vector<int> col;
for( int i = 1; i<=9; ++i)
col.push_back (i);
copy(col.rbegin (), col.rend(),
ostream_iterator<int>(cout,"\n"));