首页 > 编程语言 > 详细

深入学习c++--容器

时间:2019-05-03 17:20:36      阅读:141      评论:0      收藏:0      [点我收藏+]

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

技术分享图片

技术分享图片

技术分享图片

技术分享图片

 

深入学习c++--容器

原文:https://www.cnblogs.com/douzujun/p/10805673.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!