会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
liviayu
博客园
首页
新随笔
联系
订阅
管理
上一页
1
···
3
4
5
6
7
8
9
下一页
2023年9月21日
STL(13) set multiset
摘要: 目录源码VC6中没有identity()那么如何调用呢使用multiset 有了红黑树的基础,set和map就变得很简单了 源码 一步一步的调用rbtree 因为set的value就是key 所以从value中取出key就用identity就可以 而取出迭代器用的是const iterator 不允
阅读全文
posted @ 2023-09-21 14:28 LiviaYu
阅读(16)
评论(0)
推荐(0)
2023年9月15日
STL(12) RBTREE 红黑树
摘要: 目录红黑树的基本原理基本要求变色和旋转rbtree源码G2.9示例2.94.9treenode的构造 关联式容器: 查找快,插入快 STL中的主要代表:红黑树,hashtable 红黑树的基本原理 单个结点来看,左孩子小于根节点,右孩子大于根节点(二叉搜索树) 红黑树是什么,有什么意义:排序二叉树有
阅读全文
posted @ 2023-09-15 17:35 LiviaYu
阅读(95)
评论(0)
推荐(0)
STL(11) deque stack queue
摘要: 目录源码 G2.9buffersize的自定大小insert模拟连续空间-的重载++--重载+=重载gnu c 4.9queuestack其他的底层结构 容器deque,双向开口的queue 容器结构的表示 是一种分段连续的假象,当需要分配的时候,向前面再分配一个buffer 迭代器的构造如图,no
阅读全文
posted @ 2023-09-15 00:10 LiviaYu
阅读(14)
评论(0)
推荐(0)
2023年9月12日
STL(10) array forward_list
摘要: 目录 array在c++中本就存在,而为什么要包装称为容器 要遵守容器的原则,要实现iterator,要享受标准库中的算法等 由于不可扩充,所以需要指定大小
阅读全文
posted @ 2023-09-12 23:55 LiviaYu
阅读(11)
评论(0)
推荐(0)
STL(9) vector
摘要: 目录底层两倍增长的原理vector的iteratorgnu c 4.9 动态增长的数组 底层 数组,支持动态扩充 在某一个点上,需要在内存的别的地方找到空间,进行扩充 扩充方式,当到达了一个阈值,在内存中找到另一个空间,进行成倍增长 sizeof vector为12 内部有三根指针,start en
阅读全文
posted @ 2023-09-12 01:29 LiviaYu
阅读(16)
评论(0)
推荐(0)
STL(8) 迭代器设计原则和traits
摘要: 目录iterator的原则以rotate为例子五种类型traits Traits:特征 Traits就是说你丢给他一个东西,希望得到某些特征 iterator的原则 是算法和容器的桥梁 用iterator告诉算法操作范围 在操作的过程中,算法想知道iterator的性质,从中选择最佳化的动作 以ro
阅读全文
posted @ 2023-09-12 00:45 LiviaYu
阅读(30)
评论(0)
推荐(0)
2023年9月9日
STL(7) list
摘要: 目录源代码分析GNU 2.9存储对象list_node的设计iterator要求用法源代码源代码分析GNU 4.9 源代码分析GNU 2.9 存储对象 list中唯一存储的东西就是一个node 这个node是link_type类型,而link_type被定义为是list_node* 也就是说,nod
阅读全文
posted @ 2023-09-09 02:45 LiviaYu
阅读(13)
评论(0)
推荐(0)
2023年9月6日
STL(6) 分配器
摘要: [toc] 不直接使用,是幕后英雄,选择合适的分配器可以提高效率 #operator new()和malloc() operator new()在最底层会调用malloc() 
评论(0)
推荐(0)
STL(5) 必要基础:操作符重载和模板
摘要: [toc] #操作符重载 operator overloaded ##四个不能重载的操作符 1. ::域 2. . 成员获取 3. .* 4. ?:判断语句 ##基本语法 下图说明了对于不同数量的变量如何去重载 
评论(0)
推荐(0)
2023年9月5日
STL(4) OOP
摘要: [toc] #OOP OOP试图将数据和操作关联在一起 比如一个class中,不仅有数据,还有对于容器的操作 #GP 
评论(0)
推荐(0)
上一页
1
···
3
4
5
6
7
8
9
下一页
公告