Espacios de nombres
Variantes
Acciones

std::flat_multimap<Key,T,Compare,KeyContainer,MappedContainer>::extract

De cppreference.com
 
 
 
 
container_type extract() &&;
(desde C++23)

Extrae el contenedor adaptado c. Equivale a return std::move(c);.

Después de esta operación, *this queda vacío, incluso si se lanza una excepción.

Contenido

[editar] Parámetros

(Ninguno)

[editar] Valor de retorno

std::move(c).

[editar] Complejidad

Constante.

[editar] Ejemplo

#include <cassert>
#include <flat_set>
#include <print>
#include <type_traits>
#include <vector>
 
int main()
{
    std::flat_multimap<int> set{1, 2, 3};
    const auto size = set.size();
 
    auto c = set.extract();
    assert(c.size() == size);
    assert(set.empty());
    assert(set.keys().empty());
    assert(set.values().empty());
 
    // El contenedor por defecto de las claves es std::vector:
    static_assert(std::is_same_v<decltype(c), std::vector<int>>);
 
    std::println("{}", c);
}

Salida:

[1, 2, 3]

[editar] Véase también

Reemplaza los contenedores subyacentes.
(función miembro pública) [editar]