Espacios de nombres
Variantes

std::literals::string_view_literals::operator""sv

De cppreference.com
 
 
 
 
<tbody> </tbody>
Definido en el archivo de encabezado <string_view>
constexpr string_view operator "" sv(const char* str, std::size_t len) noexcept;
(1) (desde C++17)
constexpr u8string_view operator "" sv(const char8_t* str, std::size_t len) noexcept;
(2) (desde C++20)
constexpr u16string_view operator "" sv(const char16_t* str, std::size_t len) noexcept;
(3) (desde C++17)
constexpr u32string_view operator "" sv(const char32_t* str, std::size_t len) noexcept;
(4) (desde C++17)
constexpr wstring_view operator "" sv(const wchar_t* str, std::size_t len) noexcept;
(5) (desde C++17)

Forma una vista sobre cadena a partir de un literal de caracteres.

1) Devuelve std::string_view{str, len}
2) Devuelve std::u8string_view{str, len}
3) Devuelve std::u16string_view{str, len}
4) Devuelve std::u32string_view{str, len}
5) Devuelve std::wstring_view{str, len}

Parámetros

str - Puntero al inicio de un literal de array de caracteres sin formato.
len - Longitud del literal de array de caracteres sin formato.

Valor de retorno

El literal de vista sobre cadena (string_view).

Notas

Estos operadores están declarados en el espacio de nombres std::literals::string_view_literals, donde tanto literals como string_view_literals son espacios de nombres en línea. El acceso a estos operadores puede obtenerse con using namespace std::literals, using namespace std::string_view_literals, y using namespace std::literals::string_view_literals.

Ejemplo

#include <string_view>
#include <iostream>

int main()
{
    using namespace std::literals;

    std::string_view s1 = "abc\0\0def";
    std::string_view s2 = "abc\0\0def"sv;
    std::cout << "s1: " << s1.size() << " \"" << s1 << "\"\n";
    std::cout << "s2: " << s2.size() << " \"" << s2 << "\"\n";
}

Posible salida:

s1: 3 "abc"
s2: 8 "abc^@^@def"

Véase también

Construye una vista sobre cadena (basic_string_view).
(función miembro pública) [editar]