STL学习
1.基础知识
1.1.C++编译过程
预编译器->编译器->汇编器->链接器
index.cpp->index.i->index.s->index.o->index.exe
1.2.STL基础
STL中实现容器和算法分离依赖于迭代器,迭代器本质是个指针。
2.容器
2.1.unordered_map
- emplace()和insert():emplace()比insert()少一次拷贝构造,推荐使用emplace往map里插入数据。
- bucket()是用来返回索引所对应桶编号的。
- 通过访问迭代器的first和second成员变量可以拿到map对应的key和value。
- unordered_map基于hash table实现,map基于红黑树实现
- 使用建议:在需要有序性或者对单次查询有时间要求的应用场景下,应使用map,其余情况应使用unordered_map。