标准的
打算创建一个
相关问题: polymorphic_allocator: when and why should I use it?
C++17
新增了一个名为pmr
的命名空间,其中包含一组以memory_resource
名称分组的类。在互联网上搜索后,我发现关于它的通俗易懂的信息很少,这就是这个问题产生的直接原因:
pmr
及特别是pmr::memory_resource
的主要思想是什么?
更具体地说,我心中有一些疑问:
- 它带来了什么新东西,或者它解决了哪些限制?
- 与
allocator
有什么区别? - “polymorphic”是否意味着可以在运行时选择提供给容器构造函数的
allocator
(例如,用于测试目的)? - 对于实现内存池或其他内存管理方案有帮助吗?
打算创建一个
memory pool
分配器,在此过程中发现了这个命名空间。看到像pool_options
或polymorphic_allocator
这样的名称引起了我的注意。相关问题: polymorphic_allocator: when and why should I use it?
memory_resource
是你从中派生出来以实现多态分配功能的,这通过分配器类型polymorphic_allocator
来公开。 - Nicol Bolaspool_options
、synchronized_pool_resource
、unsynchronized_pool_resource
、monotonic_buffer_resource
、memory_resource class
...只有polymorphic_allocator
被回答了一半。另一方面,您关闭了问题,因为它是重复的问题而不是重复的答案(请记住,人们不知道答案,通过问题搜索)。 - Adrian Maire