Espacios de nombres
Variantes

std::ranges::common_view<V>::base

De cppreference.com
 
 
Biblioteca de rangos
Adaptadores de rangos
 
 
<tbody> </tbody>
constexpr V base() const& requires std::copy_constructible<V>;
(1) (desde C++20)
constexpr V base() &&;
(2) (desde C++20)

Devuelve una copia de la vista subyacente.

1) Construye por copia el resultado de la vista subyacente.
2) Construye por movimiento el resultado de la vista subyacente.

Parámetros

(Ninguno)

Valor de retorno

Una copia de la vista subyacente.

Ejemplo

#include <iostream>
#include <ranges>
#include <string>

int main()
{
    std::string str { "C++20" };
    auto vista = std::views::common(str);

    std::string copia_de_str = vista.base();
    std::cout << "copia de str: [" << copia_de_str << "]\n";
    std::cout << "vista.base(): [" << vista.base() << "]\n";

    std::string str_movido = std::move(vista.base());
    std::cout << "str movido:   [" << str_movido << "]\n";
    std::cout << "vista.base(): [" << vista.base() << "]\n"; // no especificado
}

Posible salida:

copia de str: [C++20]
vista.base(): [C++20]
str movido:   [C++20]
vista.base(): []