Compartilhar via


Classe deque

Organiza os elementos de dados em uma organização linear e, como um vetor, habilita rapidamente a inserção e exclusão de acesso aleatório a qualquer elemento, e eficientes regressiva do contêiner. No entanto, ao contrário de um vetor, a classe de deque também oferece suporte à inserção e exclusão eficientes na frente do contêiner.

template <
    class Type, 
    class Allocator=allocator<Type> 
>
    class deque

Parâmetros

  • Type
    O tipo de dados do elemento a ser armazenado em deque.

  • Allocator
    O tipo que representa o objeto armazenado do alocador que encapsula detalhes sobre a alocação e a desalocação de deque de memória. Esse argumento é opcional, e o valor padrão é allocator<Type>.

Comentários

A escolha do tipo do contêiner deve ser em geral no tipo de pesquisa e de inserir exigido pelo aplicativo. Vetores deve ser o contêiner preferido para gerenciar quando uma sequência de acesso aleatório ao elemento estiver em um premium e as inserções ou exclusões dos elementos são necessárias somente ao final de uma sequência. O desempenho do contêiner de lista é superior quando as inserções e exclusões eficientes () em tempo constantes em qualquer local na sequência estão em um premium. Tais operações no meio da sequência requerem as cópias e as atribuições de elemento proporcional ao número de elementos na sequência (hora lineares).

A redistribuição de Deque ocorre quando uma função de membro deve inserir ou apagar os elementos de sequência:

  • Se um elemento está inserido em uma sequência vazia, ou se um elemento está apagado para sair de uma sequência vazia, um retornado anterior dos iteradores por inicie e extremidade se tornarão inválidos.

  • Se um elemento é inserido na primeira posição do deque, todos os iteradores, mas sem referências, que os elementos designados existentes forem inválidos.

  • Se um elemento é inserido no final de deque, então de extremidade e de todos os iteradores, mas nenhuma de referências, que os elementos designados existentes forem inválidos.

  • Se um elemento é apagado na frente do deque, somente o iterador e as referências ao elemento apagado forem inválidos.

  • Se o elemento o último é apagado de extremidade de deque, somente o iterador ao elemento final e as referências ao elemento apagado forem inválidos.

Se não, ou inserindo apagando um elemento invalida todos os iteradores e referências.

Construtores

deque

Constrói deque. que vários construtores são fornecidos para configurar o conteúdo de nova deque de diferentes maneiras: vazia; carregado com um número especificado de elementos vazias; conteúdo movidos ou copiados de outro deque; conteúdo copiados ou movidos com um iterador; e um elemento copiado no tempo de deque_Count . Alguns dos construtores habilitam usando um conjunto personalizado allocator para criar elementos.

Typedefs

allocator_type

Um tipo que representa a classe de allocator para o objeto de deque .

const_iterator

Um tipo que fornece um iterador de acesso aleatório que pode acessar e ler os elementos em deque como const

const_pointer

Um tipo que fornece um ponteiro para um elemento em deque como const.

const_reference

Um tipo que fornece uma referência para um elemento em deque para ler e outras operações como const.

const_reverse_iterator

Um tipo que fornece um iterador de acesso aleatório que pode acessar e ler os elementos em deque como const. O deque é exibido no contrário. Para obter mais informações, consulte Classe reverse_iterator

difference_type

Um tipo que fornece a diferença entre dois iteradores de acesso aleatório que se referem aos elementos no mesmo deque.

iterador

Um tipo que fornece um iterador de acesso aleatório capaz de ler ou modificar qualquer elemento em deque.

ponteiro

Um tipo que fornece um ponteiro para um elemento em deque.

referência

Um tipo que fornece uma referência a um elemento armazenados em deque.

reverse_iterator

Um tipo que fornece um iterador de acesso aleatório capaz de ler ou modificar um elemento em deque. O deque é exibido na ordem inversa.

size_type

Um tipo que conta o número de elementos em deque.

tipo de valor

Um tipo que representa o tipo de dados armazenados em deque.

Funções de membro

atribuir

Apaga os elementos de deque e copia uma nova sequência de elementos para o destino deque.

em

Retorna uma referência ao elemento em um local especificado em deque.

voltar

Retorna uma referência ao elemento o mais recente de deque.

iniciar

Retorna um iterador de acesso aleatório que trata o primeiro elemento em deque.

deque::cbegin

Retorna um iterador de const ao primeiro elemento em deque.

deque::cend

Retorna um iterador de acesso aleatório de const que aponta apenas além do de deque.

limpar

Apaga todos os elementos de deque.

deque::crbegin

Retorna um iterador de acesso aleatório de const ao primeiro elemento em deque exibido em ordem inversa.

deque::crend

Retorna um iterador de acesso aleatório de const ao primeiro elemento em deque exibido em ordem inversa.

deque::emplace

Insere um elemento construído no lugar de deque em uma posição especificada.

deque::emplace_back

Adiciona um elemento construído em vigor até o término de deque.

deque::emplace_front

Adiciona um elemento construído no ponto de início de deque.

vazio

Retorna true se deque contém os elementos, e false se contém um ou mais elementos.

end

Retorna um iterador de acesso aleatório que aponta apenas além do de deque.

apagar

Remove um elemento ou um intervalo dos elementos em deque das posições especificadas.

frente

Retorna uma referência ao primeiro elemento em deque.

get_allocator

Retorna uma cópia do objeto de allocator usado para construir deque.

inserir

Insere um elemento, vários elementos, ou um intervalo dos elementos em deque em uma posição especificada.

max_size

Retorna o comprimento máximo possível de deque.

pop_back

Apaga o elemento no final de deque.

pop_front

Apaga o elemento no início de deque.

push_back

Adiciona um elemento ao final de deque.

push_front

Adiciona um elemento ao início de deque.

rbegin

Retorna um iterador de acesso aleatório ao primeiro elemento em dequeinversa.

alugado

Retorna um iterador de acesso aleatório que aponta apenas elemento além do mais recente em dequeinversa.

redimensionar

Especifica um novo tamanho de deque.

deque::shrink_to_fit

Descarta a capacidade devido à.

size

Retorna o número de elementos em deque.

troca

Troca os elementos de dois dequeS.

Operadores

operador[]

Retorna uma referência ao elemento de deque em uma posição especificada.

deque::operator=

Substitui os elementos de deque com uma cópia de outro deque.

Requisitos

Cabeçalho: <deque>

Consulte também

Referência

Segurança de threads na Biblioteca Padrão C++

Biblioteca de Modelos Padrão

Outros recursos

<deque> Membros

deque membros de classe