2013-09-27 92 views
2

我需要使用一個map,鍵爲uint32_t,值爲Meshes。我希望網格能夠在連續的內存中表現出來,因爲它們會經常被連續訪問。STL兼容的內存分配器庫

我想知道什麼內存分配器庫可用,提供以下以及;

  • 分配給contigous內存空間
  • 最好處理碎片所述存儲空間
  • 爲儘快和儘可能少的附加功能儘可能除了我提到

我已經看了提升,但它似乎沒有提供我在找什麼。

(我不使用vector原因是,容器會不斷地縮小了很多,我希望有一個uint32_t作爲標識符爲mesh

感謝

+0

你會不會考慮寫自己的,特別適合你的用例? – brunocodutra

+1

究竟是什麼*繼承?地圖順序? – WhozCraig

+2

分配器不會從'map'獲取它應該分配哪個元素的信息。也就是說,您可以在連續存儲中創建元素,但不能影響元素的內存順序(這可能會損害本地化/迭代速度)。您可以在映射中存儲指向vector或deque的索引或迭代器。這樣,你就可以擁有連續的存儲(矢量)和'uint32_t'鍵。 – dyp

回答