在allocator.h中定义的Stl默认分配器是new、delete运算符的简单包装器。stl是否有其他分配器,例如基于内存池的分配器?如果有,则定义它的头文件。
我研究了stl源代码(4.1.1)并在谷歌上搜索了它,但可以找到任何东西。
关于标准库是否提供了比std::allocator
更多的分配器模板(忽略包装器std::scoped_allocator_adapter
),在C++11 PDF中搜索没有找到任何模板。
在其他非新闻…
STL,即Standard Template Library
,与C++标准库不同。STL最初是由Stepanov开发的Ada库(IIRC)。1998年,Stepanov和Stroustrup共同提出将STL的大部分C++版本纳入第一个C++标准化的标准库,并被采纳。标准库的这一部分主要是关于迭代器和算法的。
使用一些标准库实现的源代码并不是确定什么功能是标准的好方法。为此,相关标准是权威来源。但像cppreference这样的网站也很有用。