C++标准库(侯捷) 学习笔记

265 阅读1分钟

使用一个东西,却不明白它的道理,不高明!

源码之前,了无秘密!

容器的文档

STL 六大部件

image.png

less是比较两个数据小于,bind2nd是把40传给less,当做less的第二个参数。notl 是取反。count_if是统计数量。因此,打印的内容为:遍历数组,统计数组中不小于40的数字个数。 image.png

容器 -结构与分类

Array:大小固定

Vector:会在后端自动增长(可以无限push_back)

Set、Multiset、Map、Multimap在内部是用红黑树实现的。

unordered_multiset、unordered_map 用的是hashtable。

Multiset:value可以重复

Multimap: key可以重复

image.png

Deque的数据结构

image.png

容器中使用的数据结构

锁进指的has-a的关系。如heap的实现,靠has-a vector. set的实现靠has-a rb_tree image.png