Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Insere um elemento ou um número de elementos ou um intervalo de elementos em uma lista em uma posição especificada.
iterator insert(
const_iterator _Where,
const Type& _Val
);
iterator insert(
const_iterator _Where,
Type&& _Val
);
void insert(
iterator _Where,
size_type _Count,
const Type& _Val
);
template<class InputIterator>
void insert(
iterator _Where,
InputIterator _First,
InputIterator _Last
);
Parâmetros
Parâmetro |
Descrição |
_Where |
A posição na lista alvo onde o primeiro elemento é inserido. |
_Val |
O valor do elemento que está sendo inserido na lista. |
_Count |
O número de elementos que estão sendo inseridos na lista. |
_First |
A posição do primeiro elemento no intervalo de elementos na lista de argumentos ser copiado. |
_Last |
A posição do primeiro elemento além do intervalo de elementos na lista de argumentos ser copiado. |
Valor de retorno
As duas primeiras funções de insert retornam um iterador que aponta para a posição onde o novo elemento ser inserido na lista.
Exemplo
// list_class_insert.cpp
// compile with: /EHsc
#include <list>
#include <iostream>
#include <string>
int main( )
{
using namespace std;
list <int> c1, c2;
list <int>::iterator Iter;
c1.push_back( 10 );
c1.push_back( 20 );
c1.push_back( 30 );
c2.push_back( 40 );
c2.push_back( 50 );
c2.push_back( 60 );
cout << "c1 =";
for ( Iter = c1.begin( ); Iter != c1.end( ); Iter++ )
cout << " " << *Iter;
cout << endl;
Iter = c1.begin( );
Iter++;
c1.insert( Iter, 100 );
cout << "c1 =";
for ( Iter = c1.begin( ); Iter != c1.end( ); Iter++ )
cout << " " << *Iter;
cout << endl;
Iter = c1.begin( );
Iter++;
Iter++;
c1.insert( Iter, 2, 200 );
cout << "c1 =";
for ( Iter = c1.begin( ); Iter != c1.end( ); Iter++ )
cout << " " << *Iter;
cout << endl;
c1.insert( ++c1.begin( ), c2.begin( ),--c2.end( ) );
cout << "c1 =";
for ( Iter = c1.begin( ); Iter != c1.end( ); Iter++ )
cout << " " << *Iter;
cout << endl;
// initialize a list of strings by moving
list < string > c2;
string str("a");
c2.insert( c2.begin(), move( str ) );
cout << "Moved first element: " << c2.front( ) << endl;
}
Saída
c1 = 10 20 30
c1 = 10 100 20 30
c1 = 10 100 200 200 20 30
c1 = 10 40 50 100 200 200 20 30
Moved first element: a
Requisitos
Cabeçalho: <list>
namespace: STD