CoolMind


If you cannot measure it, you cannot improve it.

Compile and run STL using llvm(libcxx)

简介 编译库 编译程序 简介 SGI STL 版本是可读性比较高的版本,但是现在其没法在较新的编译器上编译,STLPort 也是没法编译。对于初学者 来说,有一个可以直接加入调试代码的版本,在理解上会有很大的帮助。本文就是利用 llvm 提供的实现来编译。 主要参考网...

C++ bind and function

简介 bind 函数 常用函数和例子 简介 C++ 后面的版本中提供很多函数对象,可以很方便的使用,例如 less, greater 等。当函数对象有多个参数 时,我们可以通过 bind 来绑定部分参数,使得函数对象的使用范围更大。例如我想替换数组中所有大于 3 的 元...

C++ STL algorithm

简介 一些 notes sort 相关 merge 相关 简介 本文主要介绍 stl_algo.h 中暴露的算法接口。 __median for_each(Iter first, Iter last, _Fun f) find(Iter first,...

C++ STL priority queue and heap

简介 heap priority queue 应用 简介 heap 对于支持 RandomAccessIterator 的容器适用。默认构造最大堆。 push_heap 元素放在末尾,然后 __push_heap ...

C++ STL algo base

简介 算法合集 swap related comparison related copy and fill related 简介 函数列表: swap related iter_sw...

C++ STL stack, queue and deque

简介 栈 队列 双端队列 简介 本部分主要介绍三种容器: stack queue deque 他们分别是栈,队列(FIFO), 双端队列(两侧可以出入)。 栈 模板参数包括两个: _Tp: 存储数据类型 _Sequence: ...

C++ STL list and slit

简介 单链表 双向链表 总结 简介 STL 中提供了单向链表和双向链表。(好像单向链表并没有进入 C++ 标准) slist list 支持常见的操作 push/pop_back: 双向链表 push/pop_front front ...

C++ STL Vector

简介 实现细节 增加元素的操作 删除元素的操作 其它操作 简介 C++ STL Vector 是经典的连续存储空间的数据。它有两个模板参数: 存储类型: 所存储数据的类型 _Alloc: 表示其所使用的空间分...