Freigeben über


hash_multimap::erase (STL/CLR)

Entfernt Elemente an den angegebenen Positionen.

    iterator erase(iterator where);
    iterator erase(iterator first, iterator last);
    bool erase(key_type key)

Parameter

  • first
    Starten des Bereichs, der gelöscht werden soll.

  • Schlüssel
    So löschen Sie Schlüsselwert.

  • last
    Ende des Bereichs, der gelöscht werden soll.

  • deinen
    So löschende Element.

Hinweise

Die erste Memberfunktion entfernt das Element der kontrollierten Sequenz, die durch where dargestellt wird, und gibt einen Iterator, der das erste Element zurück, das über dem entfernten Element hinaus bleibt, oder hash_multimap::end (STL/CLR)(), wenn kein solches Element vorhanden ist.Sie verwenden sie, um ein einzelnes Element zu entfernen.

Die zweite Memberfunktion entfernt die Elemente der kontrollierten Sequenz im Bereich [first,last) und gibt einen Iterator, der das erste Element festgelegt wird, das über alle Elemente entfernt wurden hinaus bleibt, oder end() zurück, wenn kein solches Element vorhanden ist.Sie verwenden sie, um keines oder zu entfernen zusammenhängendere Elemente.

Die dritte Memberfunktion entfernt jedes Element der kontrollierten Sequenz, deren Schlüssel entsprechende Reihenfolge zu key verfügt, und gibt die Anzahl der entfernten Elemente zurück.Sie verwenden sie, um alle Elemente zu entfernen und zu zählen, die einem angegebenen Schlüssel entsprechen.

Jede Element delete verwendet die Zeit, die für den Logarithmus der Anzahl der Elemente in der kontrollierten Sequenz proportional ist.

Beispiel

// 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); 
    } 
 
  

Anforderungen

Header: <cliext/hash_map>

Namespace: cliext

Siehe auch

Referenz

hash_multimap (STL/CLR)

hash_multimap::clear (STL/CLR)