Partilhar via


Classe allocator_traits

A classe do modelo descreve um objeto que suplementa um tipo do alocador. Um tipo do alocador é qualquer tipo que descreva um objeto do alocador que é usado para gerenciar o armazenamento alocado. Especificamente, para qualquer tipo Allocdo alocador, você pode usar allocator_traits<Alloc> para determinar todas as informações necessárias por um contêiner alocador- habilitado. Para obter mais informações, consulte Classe allocatorpadrão.

template<class Alloc>
    class allocator_traits;

Typedefs

Nome

Descrição

allocator_traits::allocator_type

Esse é um sinônimo para o parâmetro Allocdo modelo.

allocator_traits::const_pointer

Este tipo é Alloc::const_pointer, se o tipo de for bem formada; caso contrário, esse tipo é pointer_traits<pointer>::rebind<const value_type>.

allocator_traits::const_void_pointer

Este tipo é Alloc::const_void_pointer, se o tipo de for bem formada; caso contrário, esse tipo é pointer_traits<pointer>::rebind<const void>.

allocator_traits::difference_type

Este tipo é Alloc::difference_type, se o tipo de for bem formada; caso contrário, esse tipo é pointer_traits<pointer>::difference_type.

allocator_traits::pointer

Este tipo é Alloc::pointer, se o tipo de for bem formada; caso contrário, esse tipo é value_type *.

allocator_traits::propagate_on_container_copy_assignment

Este tipo é Alloc::propagate_on_container_copy_assignment, se o tipo de for bem formada; caso contrário, esse tipo é false_type.

allocator_traits::propagate_on_container_move_assignment

Este tipo é Alloc::propagate_on_container_move_assignment, se o tipo de for bem formada; caso contrário, esse tipo é false_type. Se o tipo se aplica, um contêiner alocador- habilitado copia o alocador armazenado em uma atribuição de movimentação.

allocator_traits::propagate_on_container_swap

Este tipo é Alloc::propagate_on_container_swap, se o tipo de for bem formada; caso contrário, esse tipo é false_type. Se o tipo se aplica, um contêiner alocador- habilitado alterna o alocador armazenado em uma troca.

allocator_traits::size_type

Este tipo é Alloc::size_type, se o tipo de for bem formada; caso contrário, esse tipo é make_unsigned<difference_type>::type.

allocator_traits::value_type

Esse é um sinônimo para Alloc::value_type.

allocator_traits::void_pointer

Este tipo é Alloc::void_pointer, se o tipo de for bem formada; caso contrário, esse tipo é pointer_traits<pointer>::rebind<void>.

Métodos estáticos

Os seguintes métodos estáticos chamam o método correspondente em um parâmetro do alocador.

Nome

Descrição

Método allocator_traits::allocate

Método estático que aloca memória usando o parâmetro do alocador.

Método allocator_traits::construct

Método estático que usa um alocador especificado para construir um objeto.

Método allocator_traits::deallocate

Método estático que usa um alocador especificado para desalocar um número especificado de objetos.

Método allocator_traits::destroy

Método estático que usa um alocador especificado para chamar o destruidor em um objeto sem desalocar sua memória.

Método allocator_traits::max_size

Método estático que usa um alocador especificado para determinar o número máximo de objetos que podem ser atribuídos.

Método allocator_traits::select_on_container_copy_construction

Método estático que chama select_on_container_copy_construction no alocador especificado.

Requisitos

Cabeçalho: <memória>

Namespace: std

Consulte também

Referência

<memory>

Struct pointer_traits

Classe scoped_allocator_adaptor