Partilhar via


list::list

Constrói uma lista de um tamanho específico ou com elementos de um valor específico ou com um distribuidor específico ou como uma cópia inteira ou a parte de alguma outra lista.

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

Parâmetros

Parâmetro

Descrição

_Al

A classe do distribuidor para usar com esse objeto.

_Count

O número de elementos na lista construída.

_Val

O valor dos elementos na lista construída.

_Right

A lista de que a lista é construída ser uma cópia.

_First

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

_Last

A 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 a lista.

get_allocator retorna uma cópia do distribuidor usado para construir uma lista.

Os primeiros dois construtores especificam uma lista inicial vazio, a segunda especificando 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 Tipo.

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

O sexto construtor especifica uma cópia da lista _Right.

Os dois construtores seguir copia o intervalo [_First, _Last) de uma lista.

O construtor do último move a lista _Right.

Nenhum dos construtores realizam todas as realocações temporário.

Exemplo

// list_class_list.cpp
// compile with: /EHsc
#include <list>
#include <iostream>

int main( ) 
{
   using namespace std;
   list <int>::iterator c1_Iter, c2_Iter, c3_Iter, c4_Iter, c5_Iter, c6_Iter, c7_Iter;

   // Create an empty list c0
   list <int> c0;

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

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

   // Create a list c3 with 3 elements of value 1 and with the 
   // allocator of list c2
   list <int> c3( 3, 1, c2.get_allocator( ) );

   // Create a copy, list c4, of list c2
   list <int> c4(c2);

   // Create a list c5 by copying the range c4[_First, _Last)
   c4_Iter = c4.begin( );
   c4_Iter++;
   c4_Iter++;
   list <int> c5( c4.begin( ), c4_Iter );

   // Create a list c6 by copying the range c4[_First, _Last) and with 
   // the allocator of list c2
   c4_Iter = c4.begin( );
   c4_Iter++;
   c4_Iter++;
   c4_Iter++;
   list <int> c6( c4.begin( ), c4_Iter, c2.get_allocator( ) );

   cout << "c1 =";
   for ( c1_Iter = c1.begin( ); c1_Iter != c1.end( ); c1_Iter++ )
      cout << " " << *c1_Iter;
   cout << endl;
   
   cout << "c2 =";
   for ( c2_Iter = c2.begin( ); c2_Iter != c2.end( ); c2_Iter++ )
      cout << " " << *c2_Iter;
   cout << endl;

   cout << "c3 =";
   for ( c3_Iter = c3.begin( ); c3_Iter != c3.end( ); c3_Iter++ )
      cout << " " << *c3_Iter;
   cout << endl;

   cout << "c4 =";
   for ( c4_Iter = c4.begin( ); c4_Iter != c4.end( ); c4_Iter++ )
      cout << " " << *c4_Iter;
   cout << endl;

   cout << "c5 =";
   for ( c5_Iter = c5.begin( ); c5_Iter != c5.end( ); c5_Iter++ )
      cout << " " << *c5_Iter;
   cout << endl;

   cout << "c6 =";
   for ( c6_Iter = c6.begin( ); c6_Iter != c6.end( ); c6_Iter++ )
      cout << " " << *c6_Iter;
   cout << endl;

   // Move list c6 to list c7
   list <int> c7( move(c6) );
   list <int>::iterator c7_Iter,
   
   cout << "c7 =" ;
   for ( c7_Iter = c7.begin( ) ; c7_Iter != c7.end( ) ; c7_Iter++ )
      cout << " " << *c7_Iter;
   cout << endl;
}
  

Requisitos

Cabeçalho: <list>

namespace: STD

Consulte também

Referência

list Class

list::list (STL Samples)

Standard Template Library