Spec-Zone.ru › C++

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

template< class... Args >
void emplace_front( Args&&... args );
(с C++11)
(до C++17)
template< class... Args >
reference emplace_front( Args&&... args );
(с C++17)

Вставляет новый элемент в начало контейнера. Элемент создается с помощью std::allocator_traits::construct, которая, как правило, использует placement-new для создания элемента непосредственно в месте, указанном контейнером. Аргументы args... передаются конструктору в качестве std::forward<Args>(args)....

Все итераторы (включая итератор end()) становятся недействительными. Ссылки не становятся недействительными.

Параметры

args - аргументы для передачи конструктору элемента
Требования к типу
-T (the container's element type) должен удовлетворять требованиям EmplaceConstructible.

Возвращаемое значение

(ничего) (до C++17)
Ссылка на вставленный элемент. (с C++17)

Сложность

Постоянная.

Исключения

Если во время выполнения произойдет исключение, функция не имеет эффекта (гарантия исключительной безопасности).

См. также

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

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

Spec-Zone.ru

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