码迷,mamicode.com
首页 >  
搜索关键字:stl源码    ( 345个结果
STL源码分析--算法
STL源码剖析—算法          在STL中的算法中一些算法是可以根据算法名字来判断算法作用的。所有算法的参数都是迭代器,不过不同的算法调用的迭代器类型也是不同的。多有的STL算法都作用在由迭代器{first,lase)所表示出来的区间上。拷贝(copy)交换(swap)替换(replace)填写(fill)删除(remove)排列组合(permutation)分割(partition)随...
分类:编程语言   时间:2014-12-13 19:27:32    阅读次数:198
高效STL--非标准散列容器
STL是建立在泛化之上的。数组泛化为容器,参数化了所包含的对象的类型。函数泛化为算法,参数化了所用的迭代器的类型。指针泛化为迭代器,参数化了所指向的对象的类型。STL中的六大组件:容器、算法、迭代器、配置器、适配器、仿函数。 这六大组件中在容器中分为序列式容器和关联容器两类,正好作为STL源码剖析这本书的内容。迭代器是容器和算法之间的胶合剂,从实现的角度来看,迭代器是一种将operator*、o...
分类:其他好文   时间:2014-12-13 19:26:19    阅读次数:126
STL源码分析--仿函数 & 配接器
STL源码分析—仿函数 & 配接器 仿函数就是函数对象。就实现观点而言,仿函数其实就是一个“行为类似函数”的对象。为了能够“行为类似函数”,其类别定义中必须自定义(或说改写。重载)function call 运算子(operator()),拥有这样的运算子后,我们就可以在仿函数的对象后面加上一对小括号,以此调用仿函数所定义的operator()。仿函数作为可配接的关键因素。         ...
分类:其他好文   时间:2014-12-13 19:26:02    阅读次数:193
STL源码剖析---关联容器
STL源码剖析---关联容器          标准关联容器分为set和map两大类,包括multiset和multimap,这些容器的底层机制都是RB-tree.标准之外的关联容器有hashtable 以及以此hash table为底层机制而完成的hash_set(散列集合) hash_map(散列映射表) hash_multiset  hash_multimap. 序列和关联容器各自的内部...
分类:其他好文   时间:2014-12-09 23:11:43    阅读次数:465
STL源码剖析—序列容器
STL源码剖析—序列容器 对于STL中的容器,存在一定的内含关系,例如,heap内含一个vector,priority-queue内含一个hep,stack和queue都含有一个deque,set/map/multiset/multimap都内含一个RB-tree,hash_x都内含一个hashtable。          对于序列容器来说,vector和list的插入都是在指向迭代器之前进...
分类:其他好文   时间:2014-12-08 23:03:18    阅读次数:273
STL源码剖析—迭代器与traits编程方法
STL源码剖析—迭代器与traits编程方法          STL的中心思想就是将算法和容器分开,彼此独立设计,最后再以粘合在一起,算法和容器的泛型化,并不是很难,C++的class templates和function templates可以达成目标,但是粘合在一起就是迭代器的事情。          这么一说迭代器就是为了粘合算法和容器的,如果单独设计迭代器,那么这个迭代器就必须知道某...
分类:其他好文   时间:2014-12-08 21:29:03    阅读次数:161
STL源码剖析 --- 空间配置器 std::alloc
STL是建立在泛化之上的。数组泛化为容器,参数化了所包含的对象的类型。函数泛化为算法,参数化了所用的迭代器的类型。指针泛化为迭代器,参数化了所指向的对象的类型。STL中的六大组件:容器、算法、迭代器、配置器、适配器、仿函数。 这六大组件中在容器中分为序列式容器和关联容器两类,正好作为STL源码剖析这本书的内容。迭代器是容器和算法之间的胶合剂,从实现的角度来看,迭代器是一种将operator*、o...
分类:其他好文   时间:2014-12-08 00:55:58    阅读次数:213
图解STL内存管理的两种边界情况(STL源码剖析补充)
图解STL内存管理的两种边界情况(STL源码剖析补充) 第一种情况就是内存池剩余的小字节空间怎么处理,会不会有内存泄露,答案肯定是不会,但是这个过程是怎么处理的,以下的代码已经简化处理,直接放到VS2010里就可以运行 #include #include static const size_t __ALIGN=8; static const size_t __MAX_B...
分类:其他好文   时间:2014-12-04 08:51:29    阅读次数:161
STL 中的链表排序
一直以来学习排序算法, 都没有在链表排序上下太多功夫,因为用得不多。最近看STL源码,才发现,原来即使是链表,也能有时间复杂度为O(nlogn)的算法,大大出乎我的意料之外,一般就能想到个插入排序。下面的代码就是按照源码写出的(去掉了模板增加可读性),注意forward_list是C++11新加的单...
分类:编程语言   时间:2014-11-20 21:48:34    阅读次数:602
C++ STL源码学习之算法篇
C++标准库 算法学习...
分类:编程语言   时间:2014-11-19 22:11:54    阅读次数:288
345条   上一页 1 ... 20 21 22 23 24 ... 35 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!