Namespaces
Variants

std:: allocator_arg, std:: allocator_arg_t

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)
Definido en el encabezado <memory>
struct allocator_arg_t { explicit allocator_arg_t ( ) = default ; } ;
(1) (desde C++11)
constexpr std:: allocator_arg_t allocator_arg { } ;
(2) (desde C++11)
(inline desde C++17)
1) std::allocator_arg_t es un tipo de clase vacío utilizado para eliminar la ambigüedad de las sobrecargas de constructores y funciones miembro de objetos conscientes del asignador, incluyendo std::tuple , std::function , std::packaged_task , (hasta C++17) y std::promise .
2) std::allocator_arg es una instancia de ( 1 ) que puede pasarse a los constructores y funciones miembro de dichos tipos permitidos.

Informes de defectos

Los siguientes informes de defectos que modifican el comportamiento se aplicaron retroactivamente a los estándares de C++ publicados anteriormente.

DR Aplicado a Comportamiento publicado Comportamiento correcto
LWG 2510 C++11 el constructor por defecto no era explícito, lo que podía llevar a ambigüedad hecho explícito

Véase también

comprueba si el tipo especificado admite la construcción uses-allocator
(plantilla de clase)