allocator_traits (clase)

La clase de plantilla describe un objeto que complemente un tipo de asignador. Un tipo de asignador es cualquier tipo que describa un objeto de asignador que se utiliza para administrar almacenamiento asignado. , Porque cualquier asignador escribe Alloc, puede utilizar específicamente allocator_traits<Alloc> para determinar toda la información que necesita un contenedor asignador- habilitado. Para obtener más información, vea allocator (Clase)predeterminado.

template<class Alloc>
    class allocator_traits;

Typedefs

Name

Descripción

allocator_traits::allocator_type

Este tipo es un sinónimo para el parámetro Allocde la plantilla.

allocator_traits::const_pointer

Este tipo es Alloc::const_pointer, si el tipo es correcto; si no, este tipo es pointer_traits<pointer>::rebind<const value_type>.

allocator_traits::const_void_pointer

Este tipo es Alloc::const_void_pointer, si el tipo es correcto; si no, este tipo es pointer_traits<pointer>::rebind<const void>.

allocator_traits::difference_type

Este tipo es Alloc::difference_type, si el tipo es correcto; si no, este tipo es pointer_traits<pointer>::difference_type.

allocator_traits::pointer

Este tipo es Alloc::pointer, si el tipo es correcto; si no, este tipo es value_type *.

allocator_traits::propagate_on_container_copy_assignment

Este tipo es Alloc::propagate_on_container_copy_assignment, si el tipo es correcto; si no, este tipo es false_type.

allocator_traits::propagate_on_container_move_assignment

Este tipo es Alloc::propagate_on_container_move_assignment, si el tipo es correcto; si no, este tipo es false_type. Si el tipo es true, un contenedor asignador- habilitado copia el asignador almacenado en una asignación de movimiento.

allocator_traits::propagate_on_container_swap

Este tipo es Alloc::propagate_on_container_swap, si el tipo es correcto; si no, este tipo es false_type. Si el tipo es true, un contenedor asignador- habilitado cambia el asignador almacenado en un intercambio.

allocator_traits::size_type

Este tipo es Alloc::size_type, si el tipo es correcto; si no, este tipo es make_unsigned<difference_type>::type.

allocator_traits::value_type

Este tipo es un sinónimo de Alloc::value_type.

allocator_traits::void_pointer

Este tipo es Alloc::void_pointer, si el tipo es correcto; si no, este tipo es pointer_traits<pointer>::rebind<void>.

Métodos estáticos

Los métodos estáticos siguientes llaman al método correspondiente en un parámetro determinado del asignador.

Name

Descripción

allocator_traits::allocate (método)

Método estático que asigna memoria mediante el parámetro determinado del asignador.

allocator_traits::construct (método)

Método estático que utiliza un asignador especificado para construir un objeto.

allocator_traits::deallocate (método)

Método estático que utiliza un asignador especificado para desasignar un número especificado de objetos.

allocator_traits::destroy (método)

Método estático que utiliza un asignador especificado para llamar al destructor en un objeto sin desasignar su memoria.

allocator_traits::max_size (método)

Método estático que utiliza un asignador especificado para determinar el número máximo de objetos que pueden asignarse.

allocator_traits::select_on_container_copy_construction (método)

Método estático que llama a select_on_container_copy_construction en el asignador especificado.

Requisitos

Encabezado: <memory>

Espacio de nombres: std

Vea también

Referencia

<memory>

pointer_traits (Struct)

scoped_allocator_adaptor (clase)