命名空间
变体
操作

std::allocator_traits<Alloc>::select_on_container_copy_construction

来自 cppreference.cn
 
 
内存管理库
(仅为阐述目的*)
未初始化内存算法
(C++17)
(C++17)
(C++17)
受约束的未初始化
内存算法
C 库

分配器
内存资源
垃圾回收支持
(C++11)(直到 C++23)
(C++11)(直到 C++23)
(C++11)(直到 C++23)
(C++11)(直到 C++23)
(C++11)(直到 C++23)
(C++11)(直到 C++23)
未初始化存储
(直到 C++20*)
(直到 C++20*)
显式生命周期管理
 
 
定义于头文件 <memory>
static Alloc select_on_container_copy_construction( const Alloc& a );
(自 C++11 起)
(constexpr 自 C++20 起)

如果可能,通过调用 a.select_on_container_copy_construction() 获取分配器 a 的复制构造版本。如果上述操作不可行(例如,Alloc 没有成员函数 select_on_container_copy_construction()),则返回未修改的 a

此函数由所有标准库容器的复制构造函数调用。它允许构造函数参数使用的分配器意识到容器正在被复制,并在必要时修改状态。

[编辑] 参数

a - 用作容器复制构造函数参数传递的标准容器所使用的分配器

[编辑] 返回值

复制构造的标准容器要使用的分配器。

[编辑] 参见

复制 scoped_allocator_adaptor 及其所有分配器的状态
(std::scoped_allocator_adaptor<OuterAlloc,InnerAlloc...> 的公开成员函数) [编辑]