A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from http://en.cppreference.com/w/cpp/algorithm/../../cpp/container/forward_list/erase_after.html below:

std::forward_list<T,Allocator>::erase_after - cppreference.com

iterator erase_after( const_iterator pos );

(1) (since C++11)
(constexpr since C++26)

iterator erase_after( const_iterator first, const_iterator last );

(2) (since C++11)
(constexpr since C++26)

Removes specified elements from the container.

1) Removes the element following pos.

If the iterator following pos is not dereferceable, the behavior is undefined.

2) Removes the elements in the range (firstlast).

If any iterator in the range (firstlast) is not dereferceable, the behavior is undefined.

[edit] Parameters pos - iterator to the element preceding the element to remove first, last - the pair of iterators defining the range of elements to remove [edit] Return value 1)

Iterator to the element following the erased one, or

end()

if no such element exists.

2) last

[edit] Complexity

1) Constant.

2) Linear in distance between first and last.

[edit] Exceptions

Throws nothing.

[edit] Example
#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';
}

Output:

2 3 4 5 6 7 8 9
2 3 6 7 8 9
[edit] See also clears the contents
(public member function) [edit]

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4