hash_multimap::erase (STL/CLR)
Usuwa elementy na określonych pozycjach.
iterator erase(iterator where);
iterator erase(iterator first, iterator last);
bool erase(key_type key)
Parametry
pierwszy
Początek zakresu do wymazania.klucz
Wartość klucza do wymazania.ostatni
Koniec zakresu do wymazania.gdzie
Element do wymazania.
Uwagi
Pierwsza funkcja Członkowskie usuwa element kontrolowanych sekwencji wskazywanej przez wherei zwraca iterację, wyznaczający pierwszy element pozostały poza element usunięty, lub hash_multimap::end (STL/CLR)() , jeśli element nie istnieje.Użyj go do usunięcia pojedynczego elementu.
Drugi funkcji składowej usuwa elementy sekwencji kontrolowane w zakresie [first, last)i zwraca iterację, który wyznacza pierwszy element pozostały poza elementy usunięte, lub end() , jeśli element nie istnieje.Użyj go do usunięcia zero lub więcej sąsiadujących elementów.
Trzecią funkcję Członkowskie usuwa żadnego elementu sekwencji kontrolowanych, której klucz ma równoważne zamawiania do keyi zwraca liczbę liczba elementów usuniętych.Użyj go do usunięcia i policzyć wszystkie elementy, które odpowiadają określonym kluczem.
Usunięcie każdego elementu zajmuje czasu proporcjonalna do logarytmu liczby elementów w kontrolowanej sekwencji.
Przykład
// cliext_hash_multimap_erase.cpp
// compile with: /clr
#include <cliext/hash_map>
typedef cliext::hash_multimap<wchar_t, int> Myhash_multimap;
int main()
{
cliext::hash_multimap<wchar_t, int> c1;
c1.insert(cliext::hash_multimap<wchar_t, int>::make_value(L'a', 1));
c1.insert(cliext::hash_multimap<wchar_t, int>::make_value(L'b', 2));
c1.insert(cliext::hash_multimap<wchar_t, int>::make_value(L'c', 3));
// display contents " [a 1] [b 2] [c 3]"
for each (cliext::hash_multimap<wchar_t, int>::value_type elem in c1)
System::Console::Write(" [{0} {1}]", elem->first, elem->second);
System::Console::WriteLine();
// erase an element and reinspect
cliext::hash_multimap<wchar_t, int>::iterator it =
c1.erase(c1.begin());
System::Console::WriteLine("erase(begin()) = [{0} {1}]",
it->first, it->second);
// add elements and display " b c d e"
c1.insert(cliext::hash_multimap<wchar_t, int>::make_value(L'd', 4));
c1.insert(cliext::hash_multimap<wchar_t, int>::make_value(L'e', 5));
for each (cliext::hash_multimap<wchar_t, int>::value_type elem in c1)
System::Console::Write(" [{0} {1}]", elem->first, elem->second);
System::Console::WriteLine();
// erase all but end
it = c1.end();
it = c1.erase(c1.begin(), --it);
System::Console::WriteLine("erase(begin(), end()-1) = [{0} {1}]",
it->first, it->second);
System::Console::WriteLine("size() = {0}", c1.size());
// erase end
System::Console::WriteLine("erase(L'x') = {0}", c1.erase(L'x'));
System::Console::WriteLine("erase(L'e') = {0}", c1.erase(L'e'));
return (0);
}
Wymagania
Nagłówek: < cliext/hash_map >
Obszar nazw: cliext