hash_multimap::Insert (STL/CLR)
Adiciona elementos.
iterator insert(value_type val);
iterator insert(iterator where, value_type val);
template<typename InIter>
void insert(InIter first, InIter last);
void insert(System::Collections::Generic::IEnumerable<value_type>^ right);
Parâmetros
primeira
Início do intervalo para inserir.última
Final do intervalo para inserir.direito
Enumeração para inserir.Val
Valor de chave para inserir.onde
Onde no contêiner para inserir (Dica somente).
Comentários
Cada uma das funções de membro insere uma seqüência especificada por operandos restantes.
A primeira função de membro insere um elemento com valor vale retorna um iterador que designa o elemento recém-inserido.Você pode usá-lo para inserir um único elemento.
A segunda função de membro insere um elemento com valor val, usando where como uma dica (para melhorar o desempenho) e retorna um iterador que designa o elemento recém-inserido.Você pode usá-lo para inserir um único elemento que pode ser adjacente a um elemento que você conhece.
A função de membro terceira insere a seqüência [first, last).Você pode usá-lo para inserir zero ou mais elementos 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.
Inserção de cada elemento leva tempo proporcional ao logaritmo do número de elementos na seqüência controlada.Inserção pode ocorrer em tempo de constante amortizado, no entanto, dada uma dica que designa um elemento adjacente ao ponto de inserção.
Exemplo
// cliext_hash_multimap_insert.cpp
// compile with: /clr
#include <cliext/hash_map>
typedef cliext::hash_multimap<wchar_t, int> Myhash_multimap;
int main()
{
Myhash_multimap c1;
c1.insert(Myhash_multimap::make_value(L'a', 1));
c1.insert(Myhash_multimap::make_value(L'b', 2));
c1.insert(Myhash_multimap::make_value(L'c', 3));
// display contents " [a 1] [b 2] [c 3]"
for each (Myhash_multimap::value_type elem in c1)
System::Console::Write(" [{0} {1}]", elem->first, elem->second);
System::Console::WriteLine();
// insert a single value, unique and duplicate
Myhash_multimap::iterator it =
c1.insert(Myhash_multimap::make_value(L'x', 24));
System::Console::WriteLine("insert([L'x' 24]) = [{0} {1}]",
it->first, it->second);
it = c1.insert(Myhash_multimap::make_value(L'b', 2));
System::Console::WriteLine("insert([L'b' 2]) = [{0} {1}]",
it->first, it->second);
for each (Myhash_multimap::value_type elem in c1)
System::Console::Write(" [{0} {1}]", elem->first, elem->second);
System::Console::WriteLine();
// insert a single value with hint
it = c1.insert(c1.begin(), Myhash_multimap::make_value(L'y', 25));
System::Console::WriteLine("insert(begin(), [L'y' 25]) = [{0} {1}]",
it->first, it->second);
for each (Myhash_multimap::value_type elem in c1)
System::Console::Write(" [{0} {1}]", elem->first, elem->second);
System::Console::WriteLine();
// insert an iterator range
Myhash_multimap c2;
it = c1.end();
c2.insert(c1.begin(), --it);
for each (Myhash_multimap::value_type elem in c2)
System::Console::Write(" [{0} {1}]", elem->first, elem->second);
System::Console::WriteLine();
// insert an enumeration
Myhash_multimap c3;
c3.insert( // NOTE: cast is not needed
(System::Collections::Generic::
IEnumerable<Myhash_multimap::value_type>^)%c1);
for each (Myhash_multimap::value_type elem in c3)
System::Console::Write(" [{0} {1}]", elem->first, elem->second);
System::Console::WriteLine();
return (0);
}
Requisitos
Cabeçalho: < cliext/hash_map >
Namespace: cliext