Udostępnij za pośrednictwem


hash_multiset::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 kontrolowanej sekwencji wskazywanego przez wherei zwraca iterację opisująca pierwszy element pozostały poza element usunięty, lub hash_multiset::end (STL/CLR)() Jeśli nie zawiera żadnego takiego elementu.Umożliwia ona usunąć pojedynczy element.

Funkcję drugiego członka usuwa elementy kontrolowanej sekwencji w zakresie [first, last)i zwraca iterację opisująca pierwszy element pozostały poza wszelkie elementy usunięte, lub end() Jeśli nie takie istnieje element...Można użyć do usunięcia zero lub więcej sąsiadujących elementów.

Trzeci funkcji składowej usuwa dowolny element kontrolowanej sekwencji, w której klucz został zamawianie równoważne do keyi zwraca liczbę liczba elementów usuniętych.Można go używać do usuwania i policzyć wszystkie elementy, które odpowiadają określonym kluczem.

Usunięcie każdego elementu wymaga czasu proporcjonalna do logarytmu liczby elementów w kontrolowanej sekwencji.

Przykład

// cliext_hash_multiset_erase.cpp 
// compile with: /clr 
#include <cliext/hash_set> 
 
typedef cliext::hash_multiset<wchar_t> Myhash_multiset; 
int main() 
    { 
    Myhash_multiset c1; 
    c1.insert(L'a'); 
    c1.insert(L'b'); 
    c1.insert(L'c'); 
 
// display initial contents " a b c" 
    for each (wchar_t elem in c1) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
 
// erase an element and reinspect 
    System::Console::WriteLine("erase(begin()) = {0}", 
        *c1.erase(c1.begin())); 
 
// add elements and display " b c d e" 
    c1.insert(L'd'); 
    c1.insert(L'e'); 
    for each (wchar_t elem in c1) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
 
// erase all but end 
    Myhash_multiset::iterator it = c1.end(); 
    System::Console::WriteLine("erase(begin(), end()-1) = {0}", 
        *c1.erase(c1.begin(), --it)); 
    System::Console::WriteLine("size() = {0}", c1.size()); 
    return (0); 
    } 
 
  

Wymagania

Nagłówek:<cliext/hash_set>

Przestrzeń nazw: cliext

Zobacz też

Informacje

hash_multiset (STL/CLR)

hash_multiset::clear (STL/CLR)