Namespaces
Variants

std:: wstring_convert

From cppreference.net
Défini dans l'en-tête <locale>
template <

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

> class wstring_convert ;
(depuis C++11)
(obsolète en C++17)
(supprimé en C++26)

Le modèle de classe std::wstring_convert effectue des conversions entre la chaîne d'octets std::string et la chaîne large std:: basic_string < Elem > , en utilisant une facette de conversion de code individuelle Codecvt . std::wstring_convert assume la propriété de la facette de conversion et ne peut pas utiliser une facette gérée par une locale.

Les facettes standard adaptées à une utilisation avec std::wstring_convert sont std::codecvt_utf8 pour les conversions UTF-8/UCS-2 et UTF-8/UCS-4, et std::codecvt_utf8_utf16 pour les conversions UTF-8/UTF-16.

Table des matières

Types imbriqués

Type Définition
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

Membres de données

Membre Description
byte_string byte_err_string la chaîne d'octets à afficher en cas d'erreurs
( objet membre d'exposition uniquement* )
wide_string wide_err_string la chaîne large à afficher en cas d'erreurs
( objet membre d'exposition uniquement* )
Codecvt * cvtptr un pointeur vers l'objet de conversion alloué
( objet membre d'exposition uniquement* )
state_type cvtstate l'objet d'état de conversion
( objet membre d'exposition uniquement* )
std:: size_t cvtcount le compteur de conversion
( objet membre d'exposition uniquement* )

Fonctions membres

construit un nouveau wstring_convert
(fonction membre publique)
operator=
l'opérateur d'affectation par copie est supprimé
(fonction membre publique)
détruit le wstring_convert et sa facette de conversion
(fonction membre publique)
convertit une chaîne d'octets en chaîne large
(fonction membre publique)
convertit une chaîne large en chaîne d'octets
(fonction membre publique)
retourne le nombre de caractères convertis avec succès
(fonction membre publique)
retourne l'état de conversion actuel
(fonction membre publique)

Voir aussi

Conversions de caractères
Multioctets définis par les paramètres régionaux
(UTF-8, GB18030)
UTF-8
UTF-16
UTF-16 mbrtoc16 / c16rtomb (avec 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 (sans 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 >

système wchar_t :

UTF-32 (non-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)
effectue la conversion entre un tampon de flux d'octets et un tampon de flux large
(modèle de classe)
(C++11) (deprecated in C++17) (removed in C++26)
convertit entre UTF-8 et UCS-2/UCS-4
(modèle de classe)
(C++11) (deprecated in C++17) (removed in C++26)
convertit entre UTF-8 et UTF-16
(modèle de classe)