过去两周我一直在学习stl,并且一直在处理很多vector<T>
,deque<T>
和list<T>
。我一直在使用push_back()
,push_front()
,insert()
的所有时间。目前,我已经了解了“插入迭代器”,其中包括:
back_insert_iterator
,与push_back()
类似,并且要求容器具有push_back()
功能才能工作front_insert_iterator
,与push_front()
类似,要求容器有push_front()
insert_iterator
,类似insert()
和blah blah blah 所以我知道如何实现所有这些。我的问题很简单,有什么区别?为什么还要使用插入迭代器?
答案 0 :(得分:9)
因为您可以将它们传递给算法,例如
std::copy(v1.begin(), v1.end(), std::back_inserter(v2));