std:: front_insert_iterator
|
Definiert im Header
<iterator>
|
||
|
template
<
class
Container
>
class
front_insert_iterator
|
(bis C++17) | |
|
template
<
class
Container
>
class front_insert_iterator ; |
(seit C++17) | |
std::front_insert_iterator
ist ein
LegacyOutputIterator
, der Elemente an den Anfang des Containers einfügt, für den er konstruiert wurde. Die
push_front()
-Memberfunktion des Containers wird aufgerufen, wenn dem Iterator (ob dereferenziert oder nicht) ein Wert zugewiesen wird. Das Inkrementieren des
std::front_insert_iterator
ist eine No-Op-Operation.
Inhaltsverzeichnis |
Mitgliedertypen
| Mitgliedstyp | Definition | ||||
iterator_category
|
std:: output_iterator_tag | ||||
value_type
|
void | ||||
difference_type
|
|
||||
pointer
|
void | ||||
reference
|
void | ||||
container_type
|
Container
|
|
Die Member-Typen
|
(bis C++17) |
Memberfunktionen
konstruiert einen neuen
front_insert_iterator
(öffentliche Elementfunktion) |
|
|
fügt ein Objekt in den assoziierten Container ein
(öffentliche Elementfunktion) |
|
|
No-Op
(öffentliche Elementfunktion) |
|
|
No-Op
(öffentliche Elementfunktion) |
Member-Objekte
| Mitgliedername | Definition |
container
(geschützt)
|
ein Zeiger vom Typ Container * |
Beispiel
#include <algorithm> #include <deque> #include <iostream> #include <iterator> #include <vector> namespace stb { void println(auto, auto const& d) { std::ranges::copy(d, std::ostream_iterator<int>(std::cout, " ")); std::cout << '\n'; } } int main() { std::vector<int> v{1, 2, 3, 4, 5}; std::deque<int> d; std::copy(v.begin(), v.end(), std::front_insert_iterator<std::deque<int>>(d)); // or std::front_inserter(d) stb::println("{}", d); }
Ausgabe:
5 4 3 2 1
Siehe auch
|
erstellt einen
std::front_insert_iterator
vom aus dem Argument abgeleiteten Typ
(Funktions-Template) |
|
|
Iterator-Adapter für das Einfügen am Ende eines Containers
(Klassen-Template) |
|
|
Iterator-Adapter für das Einfügen in einen Container
(Klassen-Template) |