Sdílet prostřednictvím


map::Erase (STL/CLR)

Odebere prvky v určených polohách.

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

Parametry

  • první
    Začátek rozsahu smazat.

  • klíč
    Hodnota klíče smazat.

  • poslední
    Konec rozsahu smazat.

  • kde
    Prvek, který chcete vymazat.

Poznámky

První členské funkce odstraní prvek odkazuje řízené sekvence wherea vrátí iterace, který určuje první prvek zbývající mimo prvek odstraněn, nebo map::end (STL/CLR)() Pokud neexistuje žádný takový prvek.Pomocí odebrat jeden prvek.

Druhá funkce člena odebere prvky řízené sekvence v rozsahu [first, last)a vrátí iterace, označí za jakékoliv prvky odstraněny, zbývající první prvek nebo end() Pokud neexistuje žádný takový prvek..Pomocí odebrat nula nebo více sousedících prvků.

Třetí členské funkce odstraní libovolný prvek řízené sekvence klíč, jehož má rovnocenné objednávání na keya vrátí počet počet odstraněných prvků.Pomocí odebrat a spočítat všechny prvky, které odpovídají zadaným klíčem.

Každý prvek výmaz trvá úměrný logaritmu počet prvků v řízené sekvenci.

Příklad

// cliext_map_erase.cpp 
// compile with: /clr 
#include <cliext/map> 
 
typedef cliext::map<wchar_t, int> Mymap; 
int main() 
    { 
    cliext::map<wchar_t, int> c1; 
    c1.insert(cliext::map<wchar_t, int>::make_value(L'a', 1)); 
    c1.insert(cliext::map<wchar_t, int>::make_value(L'b', 2)); 
    c1.insert(cliext::map<wchar_t, int>::make_value(L'c', 3)); 
 
// display contents " [a 1] [b 2] [c 3]" 
    for each (cliext::map<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::map<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::map<wchar_t, int>::make_value(L'd', 4)); 
    c1.insert(cliext::map<wchar_t, int>::make_value(L'e', 5)); 
    for each (cliext::map<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); 
    } 
 
  

Požadavky

Záhlaví: < cliext/map >

Obor názvů: cliext

Viz také

Referenční dokumentace

map (STL/CLR)

map::clear (STL/CLR)