顺序容器: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.push_back("World "); vstr.push_back("Sun!");
printContainerString(vstr, "vector中内容:"); // Hello World Sun!
//std::list<

这篇博客探讨了STL中的顺序容器如vector、list和deque,以及容器适配器stack、queue和priority_queue。文章指出每个容器都有统一的迭代器接口,并列举了常用的迭代器操作,如自增、自减、指针解引用和比较。此外,还特别提到了vector和deque迭代器的额外操作,如加减n和比较操作。最后,强调了迭代器的范围表示为前开后闭。
最低0.47元/天 解锁文章
510

被折叠的 条评论
为什么被折叠?



