Compartilhar via


Classe vector

A classe vector STL é um modelo de classe que armazena elementos de um tipo específico em uma organização linear e permite acesso aleatório rapidamente a qualquer elemento. A classe vector deve ser o contêiner preferencial para uma sequência ao desempenho de acesso aleatório é mínimo. Quando você não tiver certeza de que tipo de contêiner de sequência para usar, use o vetor.

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

Parâmetros

  • Tipo
    O tipo do elemento a ser armazenado no vetor

  • Allocator
    O tipo do objeto que aloca e desaloca memória para o vetor. Esse argumento é opcional e o valor padrão é std::allocator*< tipo >.*

Comentários

Vetores permitem tempo constante inserções e exclusões no final da sequência. Inserindo ou excluindo elementos no meio de um vetor requer tempo linear. O desempenho do classe deque contêiner é superior em relação a inserções e exclusões no início e no final de uma seqüência. O classe list contêiner é superior em relação a inserções e exclusões em qualquer local dentro de uma sequência.

Realocação de vetor ocorre quando uma função de membro deve aumentar o número de elementos contidos no vetor além da sua capacidade de armazenamento atual. Outros inserções e exclusões podem alterar vários endereços de armazenamento dentro da sequência. Em todos esses casos, iteradores ou referências que aponte para partes alterados da sequência serão invalidadas. Se nenhuma realocação, apenas os iteradores e referências antes do ponto de inserção/exclusão permanecem válidas.

O vector < bool > classe é uma especialização completa do vetor de modelo de classe para elementos do tipo bool com um alocador para o tipo subjacente usado pela especialização.

O vector < bool > Referência classe é uma classe aninhada cujos objetos são capazes de fornecer referências a elementos (bits únicos) em um objeto vector < bool >.

Membros

Construtores

vector

Constrói um vetor de um tamanho específico ou com os elementos de um valor específico ou a um determinado allocator ou como uma cópia de algum outro vetor.

Typedefs

allocator_type

O tipo do allocator usado pelo vetor.

const_iterator

Um tipo que representa um iterador de acesso aleatório somente leitura.

const_pointer

Um tipo que representa um ponteiro de somente leitura para um elemento em um vetor.

const_reference

Uma referência a um const elemento armazenado em um vetor para leitura e execução const operações.

const_reverse_iterator

Um iterador inverso somente leitura.

difference_type

Um tipo que representa a diferença entre os endereços dos dois elementos em um objeto vector.

iterator

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

pointer

Um tipo que representa um ponteiro para um elemento em um vetor.

reference

Um tipo que representa uma referência a um elemento armazenado em um vetor.

reverse_iterator

Um tipo que representa um reverse_iterator.

size_type

Um tipo que representa o número de elementos em um objeto vector.

value_type

Um tipo que representa o tipo de dados armazenado em um vetor.

Funções membro

assign

Substitui os elementos especificados com cópias dos novos elementos.

at

Retorna uma referência ao elemento em um local especificado no vetor e lança a exceção out_of_range se o índice for menor que zero ou maior que ou igual a size().

back

Retorna uma referência para o último elemento de vetor.

begin

Retorna um iterador de acesso aleatório para o primeiro elemento em vector.

capacity

Retorna o número de elementos que o vetor pode conter sem alocar mais armazenamento.

cbegin

Retorna um iterador const acesso aleatório para o primeiro elemento em vector.

cend

Retorna um iterador const de acesso aleatório que aponta para um pastj final do vetor.

crbegin

Retorna uma constante reverse_iterator para o último elemento em um vetor.

crend

Retorna uma constante reverse_iterator aponta para uma antes do primeiro elemento em vector.

clear

Apaga os elementos do vetor.

dados

Retorna um ponteiro para o primeiro elemento em vector.

emplace

Insere um elemento construído adequadamente em vetor em uma posição especificada.

emplace_back

Adiciona um elemento construído no lugar ao final do vetor.

empty

Testa se o vetor contém elementos.

end

Retorna um iterador de acesso aleatório que aponta para após o último elemento de vetor.

erase

Remove um elemento ou um intervalo de elementos em um vetor de posições especificadas.

front

Retorna uma referência para o primeiro elemento em um objeto vector.

get_allocator

Retorna o allocator usado pelo vetor.

insert

Insere um elemento ou um número de elementos no vector em uma posição especificada.

max_size

Retorna o comprimento máximo do vetor.

pop_back

Exclui o elemento no final do vetor.

push_back

Adiciona um elemento ao final do vetor.

rbegin

Retorna um iterador para o primeiro elemento em um vetor invertido.

rend

Retorna um reverse_iterator aponta para uma antes do primeiro elemento.

reserve

Reserva um comprimento mínimo de armazenamento para um objeto de vetor.

resize

Especifica um novo tamanho para um vetor.

shrink_to_fit

Descarta excesso de capacidade.

size

Retorna o número de elementos do vetor.

swap

Troca os elementos de dois vetores.

Operadores

operator[]

Retorna uma referência para o elemento de vetor em uma posição especificada.

operator=

Substitui os elementos do vetor com uma cópia de outro vetor.

Requisitos

Cabeçalho: <vector>

Namespace: std

Consulte também

Referência

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

Biblioteca de Modelos Padrão

Outros recursos

os membros de vetor.

<vector> Membros