Namespaces
Variants
Views
Actions

Difference between revisions of "cpp/container/list/push front"

From cppreference.com
< cpp‎ | container‎ | list
m (Add link to edit the included template)
Line 1: Line 1:
{{cpp/container/push_front|list}}
+
{{page template|cpp/container/push_front|list}}
  
 
[[ja:cpp/container/list/push front]]
 
[[ja:cpp/container/list/push front]]
 
[[pt:cpp/container/list/push front]]
 
[[pt:cpp/container/list/push front]]
 
[[ru:cpp/container/list/push front]]
 
[[ru:cpp/container/list/push front]]

Revision as of 10:19, 14 October 2012

 
 
 
 
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.

No iterators or references are invalidated.

Contents

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

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

See also

constructs an element in-place at the beginning
(public member function) [edit]
adds an element to the end
(public member function) [edit]
removes the first element
(public member function) [edit]
creates a std::front_insert_iterator of type inferred from the argument
(function template) [edit]