Namespaces
Variants
Views
Actions

std::deque<T,Allocator>::pop_front

From cppreference.com
< cpp‎ | container‎ | deque
 
 
Containers library
Sequence
(C++11)
Associative
Unordered associative
Adaptors
Views
(C++20)
 
 
void pop_front();

Removes the first element of the container. If there are no elements in the container, the behavior is undefined.

Iterators and references to the erased element are invalidated. It is unspecified whether the past-the-end iterator is invalidated if the element is the last element in the container. Other references and iterators are not affected. (until C++11)
Iterators and references to the erased element are invalidated. If the element is the last element in the container, the past-the-end iterator is also invalidated. Other references and iterators are not affected. (since C++11)

Contents

[edit] Parameters

(none)

[edit] Return value

(none)

[edit] Complexity

Constant.

[edit] Exceptions

Does not throw.

[edit] Example

#include <deque>
#include <iostream>
 
auto print = [](const auto& con) {
    for (auto const& item : con)
        std::cout << item;
    std::cout << '\n';
};
 
int main() {
    std::deque<char> letters{'A','B','C','D'};
 
    for (char c{letters.back()}; c != 'H' ;) {
        letters.push_back(++c);
        print(letters);
        letters.pop_front();
    }
}

Output:

ABCDE
BCDEF
CDEFG
DEFGH

[edit] See also

removes the last element
(public member function) [edit]
inserts an element to the beginning
(public member function) [edit]