boost::container::allocator_traits::is_partially_propagable是

What does boost::container::allocator_traits::is_partially_propagable mean?

本文关键字:partially propagable is traits allocator boost container      更新时间:2023-10-16

当我遇到boost::container:allocator_traits::is_partially_propagable时,我正在努力理解boost::container::allocator_traits。

我在网上找不到任何其他关于它的文档,我可以理解 boost::container::allocator_traits 的所有其他成员,除了 is_partially_propagable 和 storage_is_unpropagable。

编辑:

以及,它们是如何实现的,以及如何在编写容器时使用它们?

它(is_partially_propagable(表示分配器使用内部存储(它有状态(,并且并非所有由它分配的内存都可以由另一个分配器释放,即使两者比较相等。(相同类型的分配器应该始终比较相等且可互换(

storage_is_unpropagable所做的是获取指向已分配内存的指针,如果这是不可传播的内存,则返回true。(因为并非所有内存都必须是不可传播的(

这个分配器(small_vector_allocator(在small_vector中用作空间优化。

https://www.boost.org/doc/libs/1_65_0/boost/container/small_vector.hpp