分配器

分配器allocators

先谈operator new()和malloc()
分配器
operator new中会调用malloc

malloc分配内存。
所要求的空间是size大小,但是malloc在申请内存时会额外申请一些别的空间。
分配器
C++的容器分配内存使用的是allocator
分配器
vc6所附的标准库,其allocatoe实现如下()微软的ide
分配器
分配器
BC5所附的标准库,其allocator的实现如下(<memory.stl>)
分配器
分配器
G2.9所附的标准库,其allocator实现如下(<defalloc.h>)LINUX平台下使用的ide
分配器
G2.9 所附的标准库,其alloc的实现如下
16条链表,以8的倍数增长。所有的容器需要内存的时候都跟这个来拿内存。
把类型装换成8的倍数,然后分配相应的内存。
分配器
G4.9STL对allocator
G4.9所附标准库,把G2.9的替换了,其allocator实现如下:

G4.9分配有一个父类
分配器
G2.9的alloca改名成了——pool_alloc
分配器
分配器