Namespaces
Variants

std::forward_list<T,Allocator>:: push_front

From cppreference.net

void push_front ( const T & value ) ;
(1) (seit C++11)
(constexpr seit C++26)
void push_front ( T && value ) ;
(2) (seit C++11)
(constexpr seit C++26)

Fügt eine Kopie von value am Anfang des Containers ein.

Keine Iteratoren oder Referenzen werden ungültig.

Inhaltsverzeichnis

Parameter

value - der Wert des voranzustellenden Elements
Typanforderungen
-
Wenn die folgende Bedingung erfüllt ist, ist das Verhalten undefiniert:
1) T ist nicht CopyInsertable in forward_list .
2) T ist nicht MoveInsertable in forward_list .

Komplexität

Konstante.

Exceptions

Wenn aus irgendeinem Grund eine Exception ausgelöst wird, haben diese Funktionen keine Wirkung ( strong exception safety guarantee ).

Beispiel

#include <forward_list>
#include <iomanip>
#include <iostream>
#include <string>
int main()
{
    std::forward_list<std::string> letters;
    letters.push_front("me"); // Überladung (1)
    std::string s{"send"};
    letters.push_front(std::move(s)); // Überladung (2)
    std::cout << "std::forward_list letters enthält: ";
    for (auto&& e : letters)
        std::cout << std::quoted(e) << ' ';
    std::cout << "\nVerschobene Zeichenkette s enthält: " << std::quoted(s) << '\n';
}

Mögliche Ausgabe:

std::forward_list letters enthält: "send" "me"
Verschobene Zeichenkette s enthält: ""

Siehe auch

Konstruiert ein Element direkt am Anfang
(öffentliche Elementfunktion)
entfernt das erste Element
(öffentliche Elementfunktion)
erstellt einen std::front_insert_iterator vom vom Argument abgeleiteten Typ
(Funktionstemplate)