STL
HerofH_
加油啊咸鱼!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
STL源码分析:浅析string和vector<char>的区别
目录 前言 转换为C-style字符串 重载输入输出流操作符 重载+、+=操作符 前言 为什么会关注string和vector<char>的区别? 先来说下string这个“类”。 string和vector、list、deque等容器不一样,在STL中并不存在class string{...},它实际上是一个全局类型,通过typed...原创 2019-10-24 11:57:13 · 3131 阅读 · 0 评论 -
STL源码分析:sort函数
目录 支持sort的容器 几种涉及到的排序算法 插入排序 快速排序 堆排序 sort函数的策略 sort函数的实现 STL的sort函数非常常用,不同的STL版本有不同的实现方式,本文就来说一下SGI STL中是如何实现sort函数的。 sort函数所采用的排序方法并非是“一种”,而是“多种”排序算法的“混合物”。在SGI STL的版本中,对一个序...原创 2019-10-10 23:07:51 · 977 阅读 · 0 评论 -
STL源码分析:空间配置器浅析
目录 allocator alloc 一级配置器 二级配置器 自由链表 内存分配allocate _S_refill函数 _S_chunk_alloc函数 内存释放deallocate 为什么要使用free_list? 为什么free_list要把128bytes分成16部分? 对于一些容器如vector、map、set之类的,都需要一个模板参数Alloc...原创 2019-09-27 17:07:47 · 681 阅读 · 0 评论 -
从源码理解智能指针(二)—— shared_ptr、weak_ptr
目录 计数器 _Ref_count _Ref_count_del _Ref_count_del_alloc _Ptr_base _Ptr_base的成员变量 构造函数 赋值重载 获取引用计数 减少引用计数 _Reset函数 _Resetw函数 shared_ptr 构造函数 无参构造 用一般参数构造 用完整对象构造 移动构造 析构函数 赋值重载 reset...原创 2019-09-24 09:53:37 · 11967 阅读 · 4 评论 -
从源码理解智能指针(一)——auto_ptr、unique_ptr
目录 auto_ptr 构造函数 拷贝赋值 让auto_ptr对象具有指针的行为 析构函数 unique_ptr _Unique_ptr_base remove_reference _Get_deleter_pointer_type _Unique_ptr_base的第三个模板参数 构造函数 无参/NULL构造 用管理对象实例构造 用管理对象实例及删除器实例构造 用另...原创 2019-09-20 16:05:35 · 1625 阅读 · 1 评论
分享