##### cppreference.com

##### Search

Create account

##### Namespaces

- Page
- Discussion

##### Variants

##### Views

- View
- Edit
- History

##### Actions

# std::list::emplace_front

From cppreference.com
< cpp‎ | container‎ | list

[edit template]

template< class... Args > void emplace_front( Args&&... args ); |  | (since C++11) (until C++17)
template< class... Args > reference emplace_front( Args&&... args ); |  | (since C++17)

Inserts a new element to the beginning of the container. The element is constructed through std::allocator_traits::construct, which typically uses placement-new to construct the element in-place at the location provided by the container. The arguments `args...` are forwarded to the constructor as std::forward<Args>(args)....

No iterators or references are invalidated.

### [edit] Parameters

args | - | arguments to forward to the constructor of the element
Type requirements
- `T (the container's element type)` must meet the requirements of `EmplaceConstructible`.

### [edit] Return value

(none) | (until C++17)
A reference to the inserted element. | (since C++17)

### [edit] Complexity

Constant.

### [edit] Exceptions

If an exception is thrown, this function has no effect (strong exception guarantee).

### [edit] See also

push_front | inserts an element to the beginning (public member function) [edit]

Retrieved from "http://en.cppreference.com/mwiki/index.php?title=cpp/container/list/emplace_front&oldid=50522"