码迷,mamicode.com
首页 >  
搜索关键字:stl源码    ( 345个结果
next_permutation原理剖析
最近刷leetcode的时候遇见next permutation这道题,感觉挺有意思的一个题目,递归的方法是较简单并且容易想到的,在网上搜了其余的解法,就是std::next_permutation非递归解法,但是让人不是很舒服的就是关于原理的部分,千篇一律的都是摘抄《STL源码剖析》,也就是这样的...
分类:其他好文   时间:2015-09-20 09:10:59    阅读次数:303
STL源码剖析-配置器(内存分配器)
全局的构造和析构函数: template inline void _Construct(_T1* __p, const _T2& __value) { new ((void*) __p) _T1(__value); placement new运算符:在已分配的内存上构造函数对象。opreator new ,new opreator,placement ...
分类:其他好文   时间:2015-08-30 17:41:08    阅读次数:287
STL源码剖析-型别技术
迭代器(一种泛型指针类型)是容器和算法的胶合剂。在使用中,经常会使用迭代器相关的类型。 来看迭代器类型萃取机。 文件:stl_iterator_base.h 定义迭代器种类的五种类型,这五种类型不包含任何数据,只是用来作为参数传递给算法, 这时会根据编译器的函数重载来选择最合适的对迭代器的操作,比如,对一个迭代器加上n, 对于forword类型的,只能循环n次,一次加一,而对于random类...
分类:其他好文   时间:2015-08-30 15:55:47    阅读次数:217
STL源码剖析-绪论
STL,标准模板库,无处不存在GP(generic programming泛型编程),有多种实现版本。 GNU C++采用的STL为:SGI STL,源码下载,参考文档。 STL文件讲解一: 针对不同的编译器,定义各种环境常量。选取其中的针对GNU编译器的一部分。 # ifdef __GNUC__ # if __GNUC__ == 2 && __GNUC_MINOR__ <= 7...
分类:其他好文   时间:2015-08-28 21:34:17    阅读次数:237
STL源码剖析——stack的实现原理和使用方法详解
Stack 简介     stack 是堆栈容器,是一种“先进后出”的容器。     stack 是简单地装饰 deque 容器而成为另外一种容器。     使用 stack 时需要加上头文件 #include 。 stack 实现原理     以某种既有容器作为底部结构,将其接口改变,使之符合“先进后出”的特性,形成一个 stack,是很容易做到的。deque 是双向开口的数据结构...
分类:其他好文   时间:2015-08-27 18:49:37    阅读次数:263
《STL源码剖析》--next_permutation函数
STL中提供了2个计算排列组合关系的算法。分别是next_permucation和prev_permutaion。next_permutation是用来计算下一个(next)字典序排列的组合,而prev_permutation用来计算上一个(prev)字典序的排列组合。 这小节看一下next_permutation...
分类:其他好文   时间:2015-08-13 23:40:04    阅读次数:176
STL源码剖析——空间的配置与释放
C++的内存配置基本操作是  ::operator new(),内存释放的基本操作是 ::operator delete()。这两个全局函数相当于C的malloc()和free()函数。是的,正是如此,STL正是以malloc()和free()完成内存的配置与释放。     但是考虑到小型区块所可能造成的内存破碎问题,STL中设计了双层级配置器, 第一级配置器直接使用malloc()和free(...
分类:其他好文   时间:2015-08-13 16:00:42    阅读次数:240
STL源码剖析——vector的实现原理总结
??     vector的数据安排以及操作方式,与array非常相似。两者的唯一区别在于空间的运用的灵活性。array是静态空间,一旦配置了就不能改变;要换个大(或小)一点的房子,可以,一切琐细都得由客户端自己来:首先配置一块新空间,然后将元素从旧址一一搬往新址,再把原来的空间释还给系统。vector是动态空间,随着元素的加入,它的内部机制会自行扩充空间以容纳新元素。因此,vector的运用对...
分类:其他好文   时间:2015-08-07 13:31:01    阅读次数:127
[转] 深入剖析 linux GCC 4.4 的 STL string
本文通过研究STL源码来剖析C++中标准模板块库std::string运行机理,重点研究了其中的引用计数和Copy-On-Write技术。平台:x86_64-redhat-linuxgcc version 4.4.6 20110731 (Red Hat 4.4.6-3) (GCC)1. 问题提出最近...
分类:系统相关   时间:2015-07-31 17:40:34    阅读次数:161
345条   上一页 1 ... 13 14 15 16 17 ... 35 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!