Espacios de nombres
Variantes

std::basic_string_view<CharT,Traits>::subview

De cppreference.com
 
 
 
 
constexpr std::basic_string_view<CharT, Traits> subview( size_type pos = 0,
                                                         size_type count = npos ) const;
(desde C++26)

Devuelve una vista de la subcadena [pospos + rlen), donde rlen es el menor de los valores count y size() - pos.

Parámetros

pos - Posición del primer carácter.
count - Longitud solicitada.

Valor de retorno

Vista de la subcadena [pospos + rlen).

Excepciones

std::out_of_range si pos > size().

Complejidad

Constante.

Notas

Macro de prueba de característica
__cpp_lib_string_subview 202506L (C++26) std::basic_string_view::subview, std::basic_string::subview

Ejemplo

#include <cassert>
#include <iostream>
#include <string_view>

int main()
{
    const std::string_view s{"¡La vida es vida!"};
    assert(s.subview(9) == "es vida!");
    assert(s.subview(9, 17) == "es vida!");
    assert(s.subview(9, 2) == "es");

    try
    {
        // pos está fuera de los límites, lanza una excepción
        const auto pos{s.length() + 17};
        [[maybe_unused]] auto x_x{s.subview(pos)};
    }
    catch (const std::out_of_range& ex)
    {
        std::cout << "Excepción: " << ex.what() << '\n';
    }
}

Posible salida:

Excepción: basic_string_view::substr: __pos (que es 26) > __size (que es 13)

Véase también

Devuelve una subcadena.
(función miembro pública) [editar]
(C++26)
Devuelve una subvista.
(función miembro pública) [editar]