std::deque<T,Allocator>::prepend_range
De cppreference.com
<tbody>
</tbody>
template< rango-compatible-con-contenedores<T> R > void prepend_range( R&& rg ); |
(desde C++23) | |
Inserta, en orden no inverso, copias de elementos en rg antes de begin(). Cada iterador en el rango rg se desreferencia exactamente una vez.
Parámetros
| rg | - | Un rango compatible con contenedores, es decir, un input_range cuyos elementos son convertibles a T.
|
| Requisitos de tipo | ||
-T debe ser EmplaceConstructible en deque de *ranges::begin(rg). También, T debe ser MoveInsertable en deque y T satisface MoveConstructible, MoveAssignable, y Swappable. De lo contrario, el comportamiento no está definido.
| ||
Valor de retorno
(Ninguno)
Complejidad
Lineal en tamaño de rg.
Notas
| Macro de Prueba de característica | Valor | Estándar | Comentario |
|---|---|---|---|
__cpp_lib_containers_ranges |
202202L |
(C++23) | Construcción e inserción consciente de rangos. |
Ejemplo
Ejecuta este código
#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}));
}
Véase también
(C++23) |
Agrega un rango de elementos al final. (función miembro pública) |
(C++23) |
Inserta un rango de elementos. (función miembro pública) |
| Inserta un elemento al principio del contenedor. (función miembro pública) | |
(C++11) |
Construye un elemento en el sitio al principio del contenedor. (función miembro pública) |