C++ STL 体系结构与内核分析(四)STL六大部件-分配器Allocate

分配器Allocate

分配器效率-分配器分配内存。new一个对象,最后也会调用malloc.如下图所示:

在VC6对allocate的支持如下:

创建用new,回收的时候调用delete。example在右下角灰色部分包括创建allocator和deallocate。内部还是调用C的malloc和free来操作。因此会带来大量的额外开销。

尽量少使用malloc,使用16条单向链表来存数据,如下图所示。

4.9版本分配器:new_allocator函数操作:内部还是调用malloc/delete,没有特殊设计

2.9的allocator变成了扩展allocator:

用例见上图灰色部分。

发布了176 篇原创文章 · 获赞 21 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/qq_27262727/article/details/105179700