hash_multimap::insert (STL/CLR)
Dodaje elementy.
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);
Parametry
pierwszy
Początek zakresu do wstawienia.ostatni
Koniec zakresu do wstawienia.prawo
Wyliczanie do wstawienia.Val
Wartość klucza do wstawienia.gdzie
Gdy w pojemniku do wstawiania (tylko Wskazówka).
Uwagi
Wstawia każdej funkcji elementów członkowskich sekwencji, określony przez pozostałe operandów.
Pierwsza funkcja Członkowskie wstawia element z wartością vali zwraca iterację, który wyznacza nowo wstawiony element.Umożliwia ona wstawić pojedynczy element.
Druga funkcja Członkowskie wstawia element z wartością val, korzystanie z where jako wskazówka (w celu zwiększenia wydajności) i zwraca iterację, który wyznacza nowo wstawiony element.Umożliwia ona wstawianie pojedynczego elementu, która może przylegać do elementu, które znasz.
Trzecią funkcję Członkowskie wstawia sekwencji [first, last).Umożliwia ona wstawiać zero lub więcej elementów, skopiowany z innego sekwencji.
Czwarty funkcji składowej wstawia sekwencji, wyznaczony przez right.Umożliwia ona Wstaw sekwencję, opisany przez moduł wyliczający.
Każdy element wstawiania wymaga czasu proporcjonalna do logarytmu liczby elementów w kontrolowanej sekwencji.Wstawiania mogą występować w amortized stałego czasu, jednak podane wskazówkę, która wyznacza element przyległych do punktu wstawiania.
Przykład
// 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);
}
Wymagania
Nagłówek: < cliext/hash_map >
Obszar nazw: cliext