Namespaces
Variants

std:: wstring_convert

From cppreference.net
Definido en el encabezado <locale>
template <

class Codecvt,
class Elem = wchar_t ,
class Wide_alloc = std:: allocator < Elem > ,
class Byte_alloc = std:: allocator < char >

> class wstring_convert ;
(desde C++11)
(obsoleto en C++17)
(eliminado en C++26)

La plantilla de clase std::wstring_convert realiza conversiones entre cadena de bytes std::string y cadena ancha std:: basic_string < Elem > , utilizando un facet de conversión de código individual Codecvt . std::wstring_convert asume la propiedad del facet de conversión y no puede utilizar un facet gestionado por una configuración regional.

Los facetas estándar adecuadas para usar con std::wstring_convert son std::codecvt_utf8 para conversiones UTF-8/UCS-2 y UTF-8/UCS-4, y std::codecvt_utf8_utf16 para conversiones UTF-8/UTF-16.

Contenidos

Tipos anidados

Tipo Definición
byte_string std:: basic_string < char , std:: char_traits < char > , Byte_alloc >
wide_string std:: basic_string < Elem, std:: char_traits < Elem > , Wide_alloc >
state_type typename Codecvt :: state_type
int_type typename wide_string :: traits_type :: int_type

Miembros de datos

Miembro Descripción
byte_string byte_err_string la cadena de bytes a mostrar en errores
( objeto miembro solo para exposición* )
wide_string wide_err_string la cadena ancha a mostrar en errores
( objeto miembro solo para exposición* )
Codecvt * cvtptr un puntero al objeto de conversión asignado
( objeto miembro solo para exposición* )
state_type cvtstate el objeto de estado de conversión
( objeto miembro solo para exposición* )
std:: size_t cvtcount el contador de conversión
( objeto miembro solo para exposición* )

Funciones miembro

construye un nuevo wstring_convert
(función miembro pública)
operator=
el operador de asignación de copia está eliminado
(función miembro pública)
destruye el wstring_convert y su faceta de conversión
(función miembro pública)
convierte una cadena de bytes en una cadena ancha
(función miembro pública)
convierte una cadena ancha en una cadena de bytes
(función miembro pública)
retorna el número de caracteres convertidos exitosamente
(función miembro pública)
retorna el estado actual de conversión
(función miembro pública)

Véase también

Conversiones de caracteres
multibyte definido por locale
(UTF-8, GB18030)
UTF-8
UTF-16
UTF-16 mbrtoc16 / c16rtomb (con DR488 de C11)

codecvt < char16_t , char ,mbstate_t >
codecvt_utf8_utf16 < char16_t >
codecvt_utf8_utf16 < char32_t >
codecvt_utf8_utf16 < wchar_t >

N/A
UCS-2 c16rtomb (sin DR488 de C11) codecvt_utf8 < char16_t > codecvt_utf16 < char16_t >
UTF-32

mbrtoc32 / c32rtomb

codecvt < char32_t , char ,mbstate_t >
codecvt_utf8 < char32_t >

codecvt_utf16 < char32_t >

system wchar_t :

UTF-32 (no Windows)
UCS-2 (Windows)

mbsrtowcs / wcsrtombs
use_facet < codecvt
< wchar_t , char ,mbstate_t >> ( locale )

codecvt_utf8 < wchar_t > codecvt_utf16 < wchar_t >
(C++11) (deprecated in C++17) (removed in C++26)
realiza conversión entre un búfer de flujo de bytes y un búfer de flujo ancho
(plantilla de clase)
(C++11) (deprecated in C++17) (removed in C++26)
convierte entre UTF-8 y UCS-2/UCS-4
(plantilla de clase)
(C++11) (deprecated in C++17) (removed in C++26)
convierte entre UTF-8 y UTF-16
(plantilla de clase)