Namensräume
Varianten
Aktionen

std::forward_list<T,Allocator>::erase_after

Von cppreference.com
 
 
 
 
iterator erase_after( const_iterator pos );
(1) (seit C++11)
iterator erase_after( const_iterator first, const_iterator last );
(2) (seit C++11)

Entfernt angegebene Elemente aus dem Container.

1) Entfernt das Element nach pos.
2) Entfernt die Elemente nach first bis einschließlich last.

Inhalt

[edit] Parameter

pos - Iterator auf das Element, das dem zu löschenden Element vorangeht
first, last - Das Iteratorenpaar, das den Bereich der zu entfernenden Elemente definiert

[edit] Rückgabewert

1) Iterator auf das Element, das auf das gelöschte Element folgt, oder end(), falls kein solches Element existiert.
2) last

[edit] Komplexität

1) Konstant.
2) Linear in der Distanz zwischen first und last.

[edit] Beispiel

#include <forward_list>
#include <iostream>
#include <iterator>
 
int main()
{
    std::forward_list<int> l = {1, 2, 3, 4, 5, 6, 7, 8, 9};
 
//  l.erase(l.begin()); // Error: no function erase()
 
    l.erase_after(l.before_begin()); // Removes first element
 
    for (auto n : l)
        std::cout << n << ' ';
    std::cout << '\n';
 
    auto fi = std::next(l.begin());
    auto la = std::next(fi, 3);
 
    l.erase_after(fi, la);
 
    for (auto n : l)
        std::cout << n << ' ';
    std::cout << '\n';
}

Ausgabe

2 3 4 5 6 7 8 9
2 3 6 7 8 9

[edit] Siehe auch

leert den Inhalt
(public member function) [edit]