C++ 符合STL的内存分配器库

C++ 符合STL的内存分配器库,c++,memory-management,boost,stl,C++,Memory Management,Boost,Stl,我需要使用贴图,键为uint32\u t,值为网格。我希望网格在连续内存中进行布局,以提高性能,因为它们将经常连续访问 我想知道有哪些内存分配器库可以提供以下功能: 分配给连续的内存空间 优选地处理所述存储器空间的碎片 尽可能快,除了我提到的以外,尽可能少的附加功能 我看过boost,但它似乎没有提供我想要的东西 (我不使用vector的原因是容器会大量增长和收缩,我更喜欢使用uint32\u t作为网格的标识符) 谢谢你,德克 没什么好说的。去看看吧 Deque 没什么好说的。去看看吧

我需要使用
贴图
,键为
uint32\u t
,值为
网格
。我希望网格在连续内存中进行布局,以提高性能,因为它们将经常连续访问

我想知道有哪些内存分配器库可以提供以下功能:

  • 分配给连续的内存空间
  • 优选地处理所述存储器空间的碎片
  • 尽可能快,除了我提到的以外,尽可能少的附加功能
我看过boost,但它似乎没有提供我想要的东西

(我不使用
vector
的原因是容器会大量增长和收缩,我更喜欢使用
uint32\u t
作为
网格的标识符)

谢谢你,德克

没什么好说的。去看看吧

Deque


没什么好说的。去看看吧Map
中获取它应该为哪个元素分配的信息。也就是说,可以在连续存储中创建元素,但不能影响元素的内存顺序(这可能会影响局部性/迭代速度)。您可以在映射中存储指向向量或deque的索引或迭代器。这样,你就有了连续的存储(矢量)加上代码> uTIN 32×T/<代码>键。难道你不考虑写自己的,特别适合你的用例吗?映射顺序?分配器没有从
Map
中获取它应该为哪个元素分配的信息。也就是说,可以在连续存储中创建元素,但不能影响元素的内存顺序(这可能会影响局部性/迭代速度)。您可以在映射中存储指向向量或deque的索引或迭代器。这样,您就有了连续存储(vector)加上
uint32\u t
键。除了它既不满足作为映射分配器的要求,也不满足使用连续内存的要求。除了它既不满足作为映射分配器的要求,也不满足使用连续内存的要求。