Udostępnij za pośrednictwem


set::erase (STL/CLR)

Usuwa elementy na określonych pozycjach.

iterator erase(iterator where);
iterator erase(iterator first, iterator last);
size_type 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 set::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_set_erase.cpp 
// compile with: /clr 
#include <cliext/set> 
 
typedef cliext::set<wchar_t> Myset; 
int main() 
    { 
    Myset 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 
    Myset::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/set>

Przestrzeń nazw: cliext

Zobacz też

Informacje

set (STL/CLR)

set::clear (STL/CLR)