std::deque<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.

All iterators (including the end() iterator) are invalidated. No 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::deque<std::string> letters;   letters.push_front("me"); // overload (1) std::string s{"send"}; letters.push_front(std::move(s)); // overload (2)   std::cout << "std::deque 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::deque letters holds: "send" "me" Moved-from string s holds: ""

[edit] See also