Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Insert Iterators vs container's member function inserter

I've been studying stl for the past two weeks and been dealing with alot of vector<T>, deque<T>, and list<T>. All those times I've been using push_back(), push_front(), insert(). Currently though, I've been introduced to "Insert Iterators" which are the following:

  • back_insert_iterator, which is similar to push_back() and does requires the container to have a push_back() function to work
  • front_insert_iterator, which is similar to push_front() and requires the container to have a push_front()
  • insert_iterator, similar insert() and blah blah blah

So I know how to implement all of this. My question is quite simple, what is the difference? Why bother using the Insert Iterators?

like image 692
Joey Arnold Andres Avatar asked Aug 31 '26 17:08

Joey Arnold Andres


1 Answers

Because you can pass them to algorithms, e.g.

std::copy(v1.begin(), v1.end(), std::back_inserter(v2));
like image 107
Stuart Golodetz Avatar answered Sep 02 '26 06:09

Stuart Golodetz