list::erase (STL/CLR)
Usuwa elementy na określonych pozycjach.
iterator erase(iterator where);
iterator erase(iterator first, iterator last);
Parametry
pierwszy
Początek zakresu do wymazania.ostatni
Koniec zakresu do wymazania.gdzie
Element do wymazania.
Uwagi
Pierwsza funkcja Członkowskie usuwa element kontrolowanych sekwencji wskazywanej przez where.Użyj go do usunięcia pojedynczego elementu.
Drugi funkcji składowej usuwa elementy sekwencji kontrolowane w zakresie [first, last).Użyj go do usunięcia zero lub więcej sąsiadujących elementów.
Obie funkcje Członkowskie zwracają iterację, który wyznacza pierwszy element pozostały poza elementy usunięte, lub list::end (STL/CLR)() , jeśli element nie istnieje.
Podczas usuwania elementów, liczba kopii elementu jest liniowa w liczbie elementów między końcem wymazywania i bliżej położonego końca sekwencji.(Podczas wymazywania jednego lub więcej elementów na końcu sekwencji, brak kopii elementu wystąpić.)
Przykład
// cliext_list_erase.cpp
// compile with: /clr
#include <cliext/list>
int main()
{
cliext::list<wchar_t> c1;
c1.push_back(L'a');
c1.push_back(L'b');
c1.push_back(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.push_back(L'd');
c1.push_back(L'e');
for each (wchar_t elem in c1)
System::Console::Write(" {0}", elem);
System::Console::WriteLine();
// erase all but end
cliext::list<wchar_t>::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: < w cliext na liście >
Obszar nazw: cliext