List::Insert (STL/CLR)
Adiciona elementos em uma posição especificada.
iterator insert(iterator where, value_type val);
void insert(iterator where, size_type count, value_type val);
template<typename InIt>
void insert(iterator where, InIt first, InIt last);
void insert(iterator where,
System::Collections::Generic::IEnumerable<Value>^ right);
Parâmetros
Contagem
Número de elementos para inserir.primeira
Início do intervalo para inserir.última
Final do intervalo para inserir.direito
Enumeração para inserir.Val
Valor do elemento para inserir.onde
Onde no contêiner para inserir antes.
Comentários
Cada membro funções insere antes do elemento apontado por where na seqüência controlada, uma seqüência especificada por operandos restantes.
A primeira função de membro insere um elemento com valor val e retorna um iterador que designa o elemento recém-inserido.Você pode usá-lo para inserir um único elemento antes de um local designado por um iterador.
A segunda função de membro insere uma repetição de count elementos do valor val.Você pode usá-lo para inserir zero ou mais elementos contíguos que são todas as cópias do mesmo valor.
If InIt is an integer type, the third member function behaves the same as insert(where, (size_type)first, (value_type)last).Otherwise, it inserts the sequence [first, last).Você pode usá-lo para inserir zero ou mais elementos contíguos copiados de outra seqüência.
A quarta função de membro insere a seqüência designada pelo right.Você pode usá-lo para inserir uma seqüência descrita por um enumerador.
Ao inserir um único elemento, o número de cópias do elemento é linear no número de elementos entre o ponto de inserção e o final mais próximo da seqüência.(Ao inserir um ou mais elementos no final de seqüência, nenhum elemento cópias ocorrerem.) Se InIt é um iterador de entrada, a função de membro terceira efetivamente executa uma inserção única para cada elemento na seqüência.Caso contrário, quando inserir N elementos, o número de cópias do elemento é linear em N mais o número de elementos entre o ponto de inserção e o final mais próximo da seqüência.
Exemplo
// cliext_list_insert.cpp
// compile with: /clr
#include <cliext/list>
int main()
{
cliext::list<wchar_t> c1;
c1.push_back(L'a');
c1.push_back(L'b');
c1.push_back(L'c');
// display initial contents " a b c"
for each (wchar_t elem in c1)
System::Console::Write(" {0}", elem);
System::Console::WriteLine();
// insert a single value using iterator
cliext::list<wchar_t>::iterator it = c1.begin();
System::Console::WriteLine("insert(begin()+1, L'x') = {0}",
*c1.insert(++it, L'x'));
for each (wchar_t elem in c1)
System::Console::Write(" {0}", elem);
System::Console::WriteLine();
// insert a repetition of values
cliext::list<wchar_t> c2;
c2.insert(c2.begin(), 2, L'y');
for each (wchar_t elem in c2)
System::Console::Write(" {0}", elem);
System::Console::WriteLine();
// insert an iterator range
it = c1.end();
c2.insert(c2.end(), c1.begin(), --it);
for each (wchar_t elem in c2)
System::Console::Write(" {0}", elem);
System::Console::WriteLine();
// insert an enumeration
c2.insert(c2.begin(), // NOTE: cast is not needed
(System::Collections::Generic::IEnumerable<wchar_t>^)%c1);
for each (wchar_t elem in c2)
System::Console::Write(" {0}", elem);
System::Console::WriteLine();
// insert a single value using index
it = c2.begin();
++it, ++it, ++it;
c2.insert(it, L'z');
for each (wchar_t elem in c2)
System::Console::Write(" {0}", elem);
System::Console::WriteLine();
return (0);
}
Requisitos
Cabeçalho: < cliext/lista >
Namespace: cliext