深入学习c++--容器

1. 简介

1. 序列式容器: array, vector, deque, list, forward_list --- 数组 或者 指针实现
2. 关联容器: set, map, multiset, multimap --- 二叉树 红黑树 O(logn)
3. 无顺序容器: unordered_map, unordered_set, unordered_multimap, unordered_multiset

补充拓展:
4. stack
5. queue
6. priority_queue
7. string
8. bitset: (0或1)

2. 元素要求

1. 元素必须 可以被赋值操作来复制或者搬移(因为容器和算法对复写的要求)

2. 元素必须可以被销毁

3. 对于序列容器,元素 必须有默认的构造函数

4. 对于某些操作, 元素需要定义 == 

5. 对于关联容器,排序准则默认的是: <, std:less

6. 无顺序容器,必须要提供一个 hash函数, 需要 == 

7. stl容器里面 存的是元素的值,而不是引用

8. 容器里面应该存放:

  • 基本元素
  • class : 满足上述

9. stl的设计原则是效率优先,安全为次

3. 容器的通用接口

4. 基本使用

4.1 array

猜你喜欢

转载自www.cnblogs.com/douzujun/p/10805673.html