std::basic_string<CharT,Traits,Allocator>:: operator basic_string_view
| Classes | ||||
|
(C++17)
|
||||
|
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
operator
std::
basic_string_view
<
CharT, Traits
>
(
)
const
noexcept
;
|
(desde C++17)
(constexpr desde C++20) |
|
Retorna un std::basic_string_view , construido como si fuera mediante std:: basic_string_view < CharT, Traits > ( data ( ) , size ( ) ) .
Contenidos |
Parámetros
(ninguno)
Valor de retorno
Una vista de cadena que representa el contenido completo de la cadena.
Notas
Es responsabilidad del programador garantizar que la vista de cadena resultante no sobreviva a la cadena.
std::string get_string(); int f(std::string_view sv); int x = f(get_string()); // CORRECTO std::string_view sv = get_string(); // Incorrecto: contiene un puntero colgante
Ejemplo
#include <iostream> #include <string> #include <string_view> void show_wstring_size(std::wstring_view wcstr_v) { std::cout << wcstr_v.size() << " code points\n"; } int main() { std::string cppstr = "ラーメン"; // cadena estrecha std::wstring wcstr = L"ラーメン"; // cadena ancha // Conversión implícita de string a string_view // mediante std::string::operator string_view: std::string_view cppstr_v = cppstr; std::cout << cppstr_v << '\n' << cppstr_v.size() << " code units\n"; // Conversión implícita de wstring a wstring_view // mediante std::wstring::operator wstring_view: show_wstring_size(wcstr); }
Salida:
ラーメン 12 code units 4 code points
Véase también
construye un
basic_string_view
(función miembro pública de
std::basic_string_view<CharT,Traits>
)
|