C++ 从入门到精通之五

大纲

C++ 容器

分配器(Allocator )

分配器的概述

C++ STL 中的分配器(Allocator)主要负责为容器提供内存的分配与释放机制,将 “内存管理” 和 “容器的数据结构、元素管理” 进行分离。STL 容器通常通过分配器申请存储元素所需的原始内存,再在这块内存上构造和销毁对象,从而避免容器直接依赖具体的内存分配方式。C++ 标准库提供了默认的 std::allocator,同时也允许开发者根据实际需求实现自定义分配器,例如用于内存池、对象池或特殊内存管理场景。因此,分配器可以理解为 STL 容器底层的内存管理抽象层,主要解决 “从哪里获取内存、如何释放内存” 等问题,而对象的构造、销毁以及容器自身的数据结构则由容器负责实现。

分配器的使用

分配器的运用
其他的分配器
自定义分配器

分配器的原理