std::deque::push_front(3)

NAME
std::deque::push_front - std::deque::push_front

Synopsis
   void push_front( const T& value ); (1)
   void push_front( T&& value ); (2) (since C++11)
   Prepends the given element value to the beginning of the container.
   All iterators (including the end() iterator) are invalidated. No references are
   invalidated.

Parameters
   value - the value of the element to prepend

Return value
   (none)

Complexity
   Constant.

Exceptions
   If an exception is thrown for any reason, these functions have no effect (strong
   exception safety guarantee).

Example
// Run this code
 #include <deque>
 #include <iomanip>
 #include <iostream>
 #include <string>
 int main()
 {
     std::deque<std::string> letters;
     letters.push_front("abc");
     std::string s{"def"};
     letters.push_front(std::move(s));
     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: "def" "abc"
 Moved-from string s holds: ""

See also
   emplace_front constructs an element in-place at the beginning
   (C++11) (public member function)
   push_back adds an element to the end
                  (public member function)
   pop_front removes the first element
                  (public member function)
                  creates a std::front_insert_iterator of type inferred from the
   front_inserter argument
                  (function template)