Compartilhar via


allocator Class

A classe de modelo descreve um objeto que gerencia a alocação de armazenamento e se para liberar matrizes de objetos do tipo Tipo.Um objeto da classe allocator é o objeto padrão do distribuidor especificado nos construtores para várias classes do modelo de recipiente na biblioteca do C++ padrão.

template <class Type> class allocator

Parâmetros

  • Tipo
    O tipo de objeto para o armazenamento que está sendo atribuído ou desalocado.

Comentários

All containers padrão da biblioteca de modelo tem um parâmetro do modelo que usa por padrão a allocator.A classe allocator de modelo fornece várias definições de tipo que são um pouco pedestres.Parecem errado definição de valor.Mas outra classe com os mesmos membros pode escolher as alternativas mais interessantes.Criar um recipiente com um objeto do distribuidor de tal classe fornece o controle individual sobre a alocação e liberando os elementos controlados pelo recipiente.

Por exemplo, um objeto do distribuidor pode atribuir o armazenamento em um heap particular.O armazenamento pode atribuir distante em um heap, ponteiros não exigem diferentes acessar os objetos atribuídos.Também pode especificar, com as definições de tipo, que fornece os elementos de serem acessados através de objetos especiais acessadores que gerenciam a memória compartilhada, ou executam coleta de lixo automática.Portanto, uma classe que atribui o armazenamento usando um objeto do distribuidor deve usar esses tipos para declarar o ponteiro e referenciar objetos, como recipientes na biblioteca do C++ padrão fazem.

Quando você derivar da classe do distribuidor, você precisará fornecer um estrutura de reassociar , cujo typedef de _Other referencia sua classe derivada recentemente.

Assim, um distribuidor define os seguintes tipos:

Este Tipos especifica o formulário que os ponteiros e referências devem tomar para elementos atribuídos.(allocator::pointer não necessariamente é o mesmo que Tipo* para todos os objetos do distribuidor, mesmo que possui essa definição óbvia para a classe allocator.)

Membros

h8z741y5.collapse_all(pt-br,VS.110).gifConstrutores

distribuidor

Construtores usados para criar objetos de allocator .

h8z741y5.collapse_all(pt-br,VS.110).gifTypedefs

const_pointer

Um tipo que fornecesse um ponteiro constante ao tipo de objeto gerenciados pelo distribuidor.

const_reference

Um tipo que fornecesse uma constante referência ao tipo de objeto gerenciados pelo distribuidor.

difference_type

Um tipo inteiro com sinal que pode representar a diferença entre valores dos ponteiros para o tipo de objeto gerenciados pelo distribuidor.

ponteiro

Um tipo que fornecesse um ponteiro para o tipo de objeto gerenciados pelo distribuidor.

referência

Um tipo que fornecesse uma referência para o tipo de objeto gerenciados pelo distribuidor.

size_type

Um tipo integral sem sinal que possa representar o comprimento da sequência que um objeto da classe allocator de modelo pode atribuir.

Tipo de valor

Um tipo que é gerenciado pelo distribuidor.

h8z741y5.collapse_all(pt-br,VS.110).gifFunções de membro

endereço

Localiza o endereço de um objeto cujo valor é especificado.

atribua

Atribui um bloco de memória grande o suficiente para armazenar pelo menos um número especificado de elementos.

compilação

Constrói um tipo específico de objeto em um endereço especificado que é inicializada com um valor especificado.

desalocar

Libera um número especificado de objetos de início de armazenamento em uma posição especificada.

destrua

Destruidor chama um dos objetos sem desalocar a memória onde o objeto foi armazenado.

max_size

Retorna o número de elementos de tipo Type que podem ser atribuídos por um objeto da classe allocator antes que a memória livre é usada anterior.

reassociar

Uma estrutura que permite que um distribuidor para objetos de um tipo para atribuir o armazenamento para objetos de outro tipo.

h8z741y5.collapse_all(pt-br,VS.110).gifOperadores

operator=

Atribui um objeto de allocator a outro objeto de allocator .

Requisitos

Cabeçalho: <memory>

Namespace: STD

Consulte também

Referência

Segurança do thread na biblioteca C++ padrão

Outros recursos

alocador membros

<memory> Membros