std::deque<T,Allocator>:: prepend_range
From cppreference.net
|
template
<
container-compatible-range
<
T
>
R
>
void prepend_range ( R && rg ) ; |
(seit C++23)
(constexpr seit C++26) |
|
Fügt, in nicht umgekehrter Reihenfolge, Kopien der Elemente in
rg
vor
begin()
ein. Jeder Iterator im Bereich
rg
wird genau einmal dereferenziert.
Alle Iteratoren (einschließlich des
end()
Iterators) werden ungültig. Keine Referenzen werden ungültig.
Inhaltsverzeichnis |
Parameter
| rg | - |
ein
container-kompatibler Bereich
, also ein
input_range
, dessen Elemente in
T
konvertierbar sind
|
| Typanforderungen | ||
-
|
||
Komplexität
Linear in der Größe von rg .
Hinweise
| Feature-Test Makro | Wert | Std | Feature |
|---|---|---|---|
__cpp_lib_containers_ranges
|
202202L
|
(C++23) | Ranges-basierte Konstruktion und Einfügung |
Beispiel
Diesen Code ausführen
#include <algorithm> #include <cassert> #include <deque> #include <vector> int main() { auto container = std::deque{0, 1, 2, 3}; const auto rg = std::vector{-3, -2, -1}; #if __cpp_lib_containers_ranges container.prepend_range(rg); #else container.insert(container.begin(), rg.cbegin(), rg.cend()); #endif assert(std::ranges::equal(container, std::deque{-3, -2, -1, 0, 1, 2, 3})); }
Siehe auch
|
(C++23)
|
fügt eine Reihe von Elementen am Ende hinzu
(öffentliche Elementfunktion) |
|
(C++23)
|
fügt eine Reihe von Elementen ein
(öffentliche Elementfunktion) |
|
fügt ein Element am Anfang ein
(öffentliche Elementfunktion) |
|
|
(C++11)
|
konstruiert ein Element direkt am Anfang
(öffentliche Elementfunktion) |