Spec-Zone.ru › C++

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

void pop_front();

Удаляет первый элемент контейнера.

Если empty() является true, поведение не определено.

(до C++26)

Если empty() является true:

  • Если реализация повышенно защищена, происходит нарушение контракта.
  • Если реализация не имеет повышенной защиты, поведение не определено.
(начиная с C++26)

Итераторы и ссылки на удалённый элемент становятся недействительными. Если этот элемент является последним элементом контейнера, итератор end() также становится недействительным. Остальные ссылки и итераторы не затрагиваются.

Сложность

Константная.

Пример

#include <deque>
#include <iostream>

int main()
{
    std::deque<char> chars{'A', 'B', 'C', 'D'};
    
    for (; !chars.empty(); chars.pop_front())
        std::cout << "chars.front(): '" << chars.front() << "'\n";
}

Вывод:

chars.front(): 'A'
chars.front(): 'B'
chars.front(): 'C'
chars.front(): 'D'

См. также

pop_back
удаляет последний элемент
(открытая функция-член)
push_front
вставляет элемент в начало
(открытая функция-член)
front
обращается к первому элементу
(открытая функция-член)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/container/deque/pop_front

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API