Compartilhar via


vector::vector

Constrói um vetor de um tamanho específico ou com elementos de um valor específico ou com um distribuidor específico ou como uma cópia de todo ou parte de um outro vetor.

vector( ); 
explicit vector(
   const Allocator& _Al
);
explicit vector(
   size_type _Count
);
vector(
   size_type _Count,
   const Type& _Val
);
vector(
   size_type _Count,
   const Type& _Val,
   const Allocator& _Al
);
vector(
   const vector& _Right
);
template<class InputIterator>
   vector(
      InputIterator _First,
      InputIterator _Last
   );
template<class InputIterator>
   vector(
      InputIterator _First,
      InputIterator _Last,
      const Allocator& _Al
   );
vector(
   vector&& _Right
);

Parâmetros

Parâmetro

Descrição

_Al

A classe do distribuidor para usar com esse objeto.get_allocator retorna a classe do distribuidor para o objeto.

_Count

O número de elementos no vetor construído.

_Val

O valor dos elementos no vetor construído.

_Right

O vetor de que o vetor é construído ser uma cópia.

_First

Posição do primeiro elemento no intervalo de elementos ser copiado.

_Last

Posição do primeiro elemento além do intervalo de elementos ser copiado.

Comentários

Todos os construtores armazenam um objeto do distribuidor (_Al) e inicializam o vetor.

Os primeiros dois construtores especificam um vetor inicial vazia.O segundo especificar explicitamente o tipo do distribuidor (_Al) a ser usado.

O terceiro construtor especifica uma repetição de um número especificado ()_Countde elementos de valor padrão para a classe Type.

Os construtores e quarta quintos especificam uma repetição de elementos () de_Countde valor _Val.

O sexto construtor especifica uma cópia do vetor _Right.

O sétimo e os construtores oitavos copia o intervalo [_First, _Last) de um vetor.

O construtor do último move o vetor _Right.

Exemplo

// vector_ctor.cpp
// compile with: /EHsc
#include <vector>
#include <iostream>

int main( )
{
   using namespace std;
   vector <int>::iterator v1_Iter, v2_Iter, v3_Iter, v4_Iter, v5_Iter, v6_Iter;

   // Create an empty vector v0
   vector <int> v0;

   // Create a vector v1 with 3 elements of default value 0
   vector <int> v1( 3 );

   // Create a vector v2 with 5 elements of value 2
   vector <int> v2( 5, 2);

   // Create a vector v3 with 3 elements of value 1 and with the allocator 
   // of vector v2
   vector <int> v3( 3, 1, v2.get_allocator( ) );

   // Create a copy, vector v4, of vector v2
   vector <int> v4( v2 );

   // Create a new temporary vector for demonstrating copying ranges
   vector <int> v5( 5 );
   for ( int index = 0; index < 5; index++ )
      v5[index] = index;

   // Create a vector v6 by copying the range v5[_First, _Last)
   vector <int> v6( v5.begin( ) + 1, v5.begin( ) + 3 );

   cout << "v1 =" ;
   for ( v1_Iter = v1.begin( ) ; v1_Iter != v1.end( ) ; v1_Iter++ )
      cout << " " << *v1_Iter;
   cout << endl;
   
   cout << "v2 =" ;
   for ( v2_Iter = v2.begin( ) ; v2_Iter != v2.end( ) ; v2_Iter++ )
      cout << " " << *v2_Iter;
   cout << endl;

   cout << "v3 =" ;
   for ( v3_Iter = v3.begin( ) ; v3_Iter != v3.end( ) ; v3_Iter++ )
      cout << " " << *v3_Iter;
   cout << endl;

   cout << "v4 =" ;
   for ( v4_Iter = v4.begin( ) ; v4_Iter != v4.end( ) ; v4_Iter++ )
      cout << " " << *v4_Iter;
   cout << endl;

   cout << "v5 =";
   for ( v5_Iter = v5.begin( ) ; v5_Iter != v5.end( ) ; v5_Iter++ )
      cout << " " << *v5_Iter;
   cout << endl;

   cout << "v6 =";
   for ( v6_Iter = v6.begin( ) ; v6_Iter != v6.end( ) ; v6_Iter++ )
      cout << " " << *v6_Iter;
   cout << endl;

   // Move vector v2 to vector v7
   vector <int> v7( move(v2) );
   vector <int>::iterator v7_Iter;
   
   cout << "v7 =" ;
   for ( v7_Iter = v7.begin( ) ; v7_Iter != v7.end( ) ; v7_Iter++ )
      cout << " " << *v7_Iter;
   cout << endl;
}
  

Requisitos

Cabeçalho: <vector>

namespace: STD

Consulte também

Referência

vector Class

Standard Template Library