STL源码分析
冯巩2.0
这个作者很懒,什么都没留下…
展开
-
【STL源码分析】deque
文章目录_Deque_base 用于维护一位的指针deque迭代器的指针push_back_M_push_back_auxinsert_M_insert_aux_Deque_base 用于维护一位的指针 //如果一维数组不够用了,需要动态开辟一个细心的一维数组, //将原数组中的保存的缓冲区地址的指针全部复制到新的一维数组中 // _Tp** _M_map; //一维数组 siz...原创 2019-08-11 11:19:56 · 575 阅读 · 0 评论 -
【STL源码分析】vector
文章目录vector 的成员变量push_back()_M_insert_auxinserterase其他vector 的成员变量// vector的成员变量// vector底层是可动态扩容的数组,所以protected: _Tp* _M_start; //数组首地址 _Tp* _M_finish; // 数组下一个可用位置 _Tp* _M_end_of_storage;...原创 2019-08-11 11:20:30 · 926 阅读 · 0 评论 -
【STL源码分析】map
文章目录map 的底层数据成员insert[] 运算符重载函数map 的底层数据成员 typedef _Rb_tree<key_type, value_type, _Select1st<value_type>, key_compare, _Alloc> _Rep_type; //红黑树结构 _Rep_type _M_t;...原创 2019-08-11 12:06:12 · 704 阅读 · 0 评论 -
【STL源码分析】二级空间适配器
文章目录为什么要使用空间适配器二级空间适配器源码分析allocate_S_refill_S_chunk_allocdeallocate为什么要使用空间适配器要知道为什么要使用空间适配器,我们先看一下下面这段代码#include <iostream>using namespace std;template<typename T>class Vector{p...原创 2019-03-30 23:12:51 · 1089 阅读 · 0 评论