您的位置:首页 > 编程语言 > C语言/C++

C++学习笔记【第二部分第十一章:关联容器】

2017-09-06 15:05 489 查看
关联容器

1. map & set是两个主要的关联容器类型

2. multi允许重复关键字,unordered开头表示无序保存

3. 关联容器不支持顺序容器关于位置的操作,也不支持构造函数或插入操作

4. 关联容器的迭代器是双向的

5. set中只有关键字没有值

6. 对于有序容器map,multimap,set,multiset必须定义关键字比较的方法

7. 当用decltype来获得一个函数指针类型时,必须加上一个来指出我们要使用一个给定函数类型的指针,如:decltype(func),这是指向func函数的指针。P379

8. 从map中提取一个元素时会得到一个pair类型的对象。pair的数据成员是public的

9. 我们不能改变一个元素的关键字,所以pair的关键字是const 的

10. 当一个迭代器遍历一个map/multimap/set/multiset的时候,迭代器是按照关键字升序遍历元素

11. 通常不对关联容器使用泛型算法,关联容器可用于只读取元素的算啊发。

12. 对map进行insert操作时,元素类型必须是pair

13. 与vector和string不一样,map的下标运算符返回的是mapped_type对象,解引用map迭代器返回的是value_type的对象。前两者这两种方式返回的对象类型是相同的

14. 如果lower_bound &upper_bound返回相同的迭代器,则关键字不在容器中

15. equal_range接受一个关键字,返回一个迭代器pair

16. 如果关键字类型固有就是无序的,或者问题可以用哈希技术解决,就可以使用无序容器

17. 无序容器的性能依赖于哈希函数的质量和桶的数量和大小
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: