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 [pos, pos + 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 [pos, pos + 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
Ejecuta este código
#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) | |
(C++26) |
Devuelve una subvista. (función miembro pública) |