顺序容器:vector, list, deque
容器适配器:satck, queue, priority_queue
每种容器都有自己的迭代器,迭代器的接口都是一样的。
常用迭代器操作:++iter; --iter; *iter; iter1 == iter2; iter1 != iter2
vector和deque迭代器的额外操作:iter + n; iter - n; >, >=, <, <=
迭代器范围:[前开 后闭)
#include<iostream>
#include<vector>
#include<deque>
#include<list>
#include<string>
template <typename Container>
void printContainerString(const Container& stl, std::string str)
{
std::cout << str.c_str() << std::endl;
for (Container::const_iterator it = stl.begin(); it != stl.end(); ++it)
{
std::cout << it->c_str() << " ";
}
std::cout << std::endl << "------------------------------\n" ;
}
int main()
{
//vector<int/string/容器/类...> 都可以。
std::vector<std::string> vstr;
vstr.push_back("Hello "); vstr.pus