std::list<T,Allocator>::push_front - cppreference.com (original) (raw)
| void push_front( const T& value ); | (1) | (constexpr since C++26) |
|---|---|---|
| void push_front( T&& value ); | (2) | (since C++11) (constexpr since C++26) |
Prepends a copy of value to the beginning of the container.
No iterators or references are invalidated.
[edit] Parameters
| value | - | the value of the element to prepend |
|---|---|---|
| Type requirements | ||
| - If the following condition is satisfied, the behavior is undefined: (since C++11) |
[edit] Complexity
Constant.
[edit] Exceptions
If an exception is thrown for any reason, these functions have no effect (strong exception safety guarantee).
[edit] Example
#include #include #include #include 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'; }
Possible output:
std::list letters holds: "send" "me" Moved-from string s holds: ""