[侯捷]C++ STL 体系结构与内核分析--从平地到万丈高楼(数据结构)

01认识headers、版本、重要资源

泛型编程:即使用Template,而STL就是使用了泛型编程

重要资源,编程能用到reference
在这里插入图片描述另一个网站,将STD的内容已经分为了六大类
在这里插入图片描述
另一个
在这里插入图片描述

p2 STL体系结构基础介绍

注意容器的 c.end()指的是容器末端后一个的位置,因此你如果根据end去寻内容会出错: == *(c.end()) ==
遍历容器:
在这里插入图片描述
== c++11新的for范围loop==
在这里插入图片描述
decl:声明 coll: 容器 你可以放STL的任何容器,也可以放想i数组这样一个聚合体
elem的类型就是iterator类型,相当于int,太长用auto代替, 然后就可以取出vec中的每一个元素出来

p3 容器分类及测试(array)

在这里插入图片描述
容器分类,顺序容器,关联容器(红黑树,相当于二叉树,随着元素的添加,红黑树会一直保持左右的平衡,因此会帮你根据key值不断排序
而unordered 容器 不定序容器随着你加入新的值,不会自动排序,但是元素的位置会变,你只能通过key值来寻找)

p6 容器分类及各种测试

讲了multi-set, multi-Map, unordered_multiset等
关联容器,find某个key值或元素非常快,但是不适合遍历,因为随着元素的加入,元素在容器的位置发生了变化,红黑树的结构就是回了查找某个元素,这是它的用法

p22 map multimap深度搜索

set map与multimap是红黑树的结构,会自动根据key值排序
map:不能改key值,但其对应value可以改
multimap:不能通过 operate访问, map可以通过[]访问,如果通过[]访问的这个key没有,就会:见图片红色字母,if the key does not exist, a pair with that key is created using default values, which is then returned
在这里插入图片描述

网页:
https://www.bilibili.com/video/av45108908/?p=6

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值