Namespaces
Variants

std::allocator_traits<Alloc>:: select_on_container_copy_construction

From cppreference.net
Memory management library
( exposition only* )
Allocators
Uninitialized memory algorithms
Constrained uninitialized memory algorithms
Memory resources
Uninitialized storage (until C++20)
( until C++20* )
( until C++20* )
( until C++20* )

Garbage collector support (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
定义于头文件 <memory>
static Alloc select_on_container_copy_construction ( const Alloc & a ) ;
(C++11 起)
(C++20 起为 constexpr)

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

此函数由所有标准库容器的拷贝构造函数调用。它使得构造函数参数所使用的分配器能够感知到容器正在被拷贝,并在必要时修改状态。

参数

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

返回值

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

参见

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