scoped_allocator_adaptor (clase)

 

Para obtener la documentación más reciente de Visual Studio 2017 RC, consulte documentación de Visual Studio 2017 RC.

Representa un anidado de asignadores.

template<class Outer, class... Inner>  
    class scoped_allocator_adaptor;  

La clase de plantilla encapsula un anidado de uno o más asignadores. Cada una clase tiene un asignador fuera de outer_allocator_typeescrito, un sinónimo de Outer, que es una base pública del objeto de scoped_allocator_adaptor . Outer se utiliza para asignar memoria que se usará en un contenedor. Puede obtener una referencia a este objeto del asignador llamando a outer_allocator.

El resto de anidar ha escrito inner_allocator_type. Un asignador interno se utiliza para asignar memoria para los elementos de un contenedor. Puede obtener una referencia al objeto almacenado de este tipo llamando a inner_allocator. Si Inner... no está vacío, inner_allocator_type ha escrito scoped_allocator_adaptor<Inner...>, y inner_allocator indica un objeto miembro. Si no, inner_allocator_type ha escrito scoped_allocator_adaptor<Outer>, y inner_allocator designa el objeto completo.

El nido se comporta como si tiene profundidad arbitraria, replicando el asignador encapsulado más interno según sea necesario.

Varios conceptos que no forman parte de ayuda visibles de la interfaz en la descripción del comportamiento de esta clase de plantilla. Un asignador fuera media todas las llamadas a la construcción y destruye métodos. Se define eficazmente por la función recursiva OUTERMOST(X), donde uno OUTERMOST(X) de siguiente.

  • Si X.outer_allocator() está bien formado, después OUTERMOST(X) es OUTERMOST(X.outer_allocator()).

  • De lo contrario, OUTERMOST(X) es X.

Definen a tres tipos por la exposición:

TipoDescripción
OutermostTipo de OUTERMOST(*this).
Outermost_traitsallocator_traits<Outermost>
Outer_traitsallocator_traits<Outer>

Constructores

NameDescripción
scoped_allocator_adaptor::scoped_allocator_adaptor (constructor)Construye un objeto scoped_allocator_adaptor.

Typedefs

NameDescripción
const_pointerEste tipo es un sinónimo de const_pointer que se asocia el asignador Outer.
const_void_pointerEste tipo es un sinónimo de const_void_pointer que se asocia el asignador Outer.
difference_typeEste tipo es un sinónimo de difference_type que se asocia el asignador Outer.
inner_allocator_typeEste tipo es un sinónimo para el tipo de adaptador anidados scoped_allocator_adaptor<Inner...>.
outer_allocator_typeEste tipo es un sinónimo para el tipo de asignador base Outer.
pointerEste tipo es un sinónimo de pointer asociado al asignador Outer.
propagate_on_container_copy_assignmentEl tipo es true solo si Outer_traits::propagate_on_container_copy_assignment es true o inner_allocator_type::propagate_on_container_copy_assignment es true.
propagate_on_container_move_assignmentEl tipo es true solo si Outer_traits::propagate_on_container_move_assignment es true o inner_allocator_type::propagate_on_container_move_assignment es true.
propagate_on_container_swapEl tipo es true solo si Outer_traits::propagate_on_container_swap es true o inner_allocator_type::propagate_on_container_swap es true.
size_typeEste tipo es un sinónimo de size_type asociado al asignador Outer.
value_typeEste tipo es un sinónimo de value_type asociado al asignador Outer.
void_pointerEste tipo es un sinónimo de void_pointer asociado al asignador Outer.

Structs

NameDescripción
scoped_allocator_adaptor::rebind (Struct)Define el tipo Outer::rebind<Other>::other como sinónimo de scoped_allocator_adaptor<Other, Inner...>.

Métodos

NameDescripción
scoped_allocator_adaptor::allocate (método)Asigna memoria mediante el asignador de Outer .
scoped_allocator_adaptor::construct (método)Construye un objeto.
scoped_allocator_adaptor::deallocate (método)Desasigna objetos utilizando el asignador externo.
scoped_allocator_adaptor::destroy (método)Destruye un objeto especificado.
scoped_allocator_adaptor::inner_allocator (método)Recupera una referencia al objeto almacenado de inner_allocator_typeescrito.
scoped_allocator_adaptor::max_size (método)Determina el número máximo de objetos que se pueden asignar mediante el asignador externo.
scoped_allocator_adaptor::outer_allocator (método)Recupera una referencia al objeto almacenado de outer_allocator_typeescrito.
scoped_allocator_adaptor::select_on_container_copy_construction (método)Crea un nuevo objeto de scoped_allocator_adaptor con cada asignador almacenado que el objeto inicializado llamando a select_on_container_copy_construction para cada asignador correspondiente.

scoped_allocator <deEncabezado: >

Espacio de nombres: std

Referencia de archivos de encabezado

Mostrar: