std::list<T,Allocator>::push_front
void push_front( const T& value ); | (1) | |
void push_front( T&& value ); | (2) | (начиная с C++11) |
Добавляет заданный элемент value в начало контейнера.
Итераторы и ссылки не инвалидируются.
Параметры
| value | - | значение добавляемого элемента |
Сложность
Константная.
Исключения
Если по любой причине возникает исключение, эти функции не оказывают никакого эффекта (гарантия строгой безопасности при исключениях).
Пример
#include <list>
#include <iomanip>
#include <iostream>
#include <string>
int main()
{
std::list<std::string> letters;
letters.push_front("me"); // overload (1)
std::string s{"send"};
letters.push_front(std::move(s)); // overload (2)
std::cout << "std::list letters holds: ";
for (auto&& e : letters)
std::cout << std::quoted(e) << ' ';
std::cout << "\nMoved-from string s holds: " << std::quoted(s) << '\n';
}
Возможный вывод:
std::list letters holds: "send" "me" Moved-from string s holds: ""
См. также
|
(C++11) | создаёт элемент непосредственно в начале контейнера (открытая функция-член) |
| добавляет элемент в конец (открытая функция-член) |
|
| удаляет первый элемент (открытая функция-член) |
|
создаёт std::front_insert_iterator типа, определяемого по аргументу (шаблон функции) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/container/list/push_front