STL内存池机制,使用双层级配置器。第一级采用malloc、free,第二级视情况采用不同策略。这种机制从heap中要空间,可以解决内存碎片问题。
1.内存申请流程图
简要流程图如下。
2.第二级配置器说明
第二级配置器目的解决小型区块造成的内存碎片问题。
使用自由链表(free-list)技巧。主动将任何小额区块的内存需求量上调至8的倍数。如需求30,则...
分类:
编程语言 时间:
2014-09-04 10:31:59
阅读次数:
194
原题http://poj.org/problem?id=2833
The Average
Time Limit: 6000MS
Memory Limit: 10000K
Total Submissions: 9423
Accepted: 2938
Case Time Limit: 4000MS
Description
...
分类:
其他好文 时间:
2014-09-04 10:31:41
阅读次数:
183
中文题,题意一看就是卧槽,这不约瑟夫么,然后脑子一抽就用了链表写,然后果然T了,最后用Vector模拟的约瑟夫问题。
#include
#include
#include
#include
#include
#include
#include
#include
#define LL __int64
using namespace std;
int n,m;
vectorp;
in...
分类:
其他好文 时间:
2014-09-03 22:43:57
阅读次数:
227
1、利用sort进行由小到大排序;
2、利用sort进行由大到小排序;
3、利用sort对结构体一级排;
4、利用sort对结构体二级排序。...
分类:
其他好文 时间:
2014-09-03 18:11:39
阅读次数:
187
删除数组中重复元素 (使用stl::set)...
分类:
其他好文 时间:
2014-09-03 16:52:36
阅读次数:
171
string s = "abc";
if ( s.back() == 'c' )
....
编译报错, 不支持back, 但用VS2010就没事
后来发现, string的back/front是c++11才加进去的, 所以gcc4.4不行
于是gcc4.9, 发现也不行, 必须加 -std=c++11才行...
分类:
其他好文 时间:
2014-09-03 13:10:26
阅读次数:
161
接上篇日志。 在WM_LBUTTONUP消息响应函数中写入代码: POINT pnt; WCHAR wc_TargtWndTittle[200]; ::GetCursorPos(&pnt); HWND h_TargetWnd = ::WindowFromPoint(pnt) ; //取得鼠标指针处....
分类:
其他好文 时间:
2014-09-03 12:59:46
阅读次数:
162
C++ STL make_heap, 省去我们自己创建堆的繁琐操作,使用stl库之间进行操作,节省我们大量的时间。...
分类:
其他好文 时间:
2014-09-03 11:18:36
阅读次数:
200
源码之前,了无秘密 ——侯杰第四章:序列式容器 C++语言本身提供了一个序列式容器array array:分配静态空间,一旦配置了就不能改变。 vector: 分配动态空间。维护一个连续线性空间,迭代器类型为:Random Access Iterato...
分类:
其他好文 时间:
2014-09-03 11:08:36
阅读次数:
231
effective STL 某个Item里重点提出了 list.size()是一个O(n)的效率 当时只是记下来了 后面看了csdn有人在实际工程上遇到坑了 我近来闲来无事 把STL的list相关部分好好看下:看看STL大牛们设置成O(n)的原因:1) size() 调用algorithm里的di....
分类:
编程语言 时间:
2014-09-03 09:35:16
阅读次数:
279