Namespaces
Variants

std:: wbuffer_convert

From cppreference.net
Definiert in Header <locale>
template <

class Codecvt,
class Elem = wchar_t ,
class Tr = std:: char_traits < Elem >

> class wbuffer_convert : public std:: basic_streambuf < Elem, Tr >
(seit C++11)
(veraltet in C++17)
(entfernt in C++26)

std::wbuffer_convert ist ein Wrapper um den Streampuffer des Typs std:: basic_streambuf < char > , der ihm das Erscheinungsbild von std:: basic_streambuf < Elem > verleiht. Alle über std::wbuffer_convert durchgeführten E/A-Operationen durchlaufen eine Zeichenkonvertierung, wie durch das Facet Codecvt definiert. std::wbuffer_convert übernimmt die Eigentümerschaft des Konvertierungs-Facets und kann kein von einem Locale verwaltetes Facet verwenden.

Die standardmäßigen Facetten, die für die Verwendung mit std::wbuffer_convert geeignet sind, sind std::codecvt_utf8 für UTF-8/UCS-2- und UTF-8/UCS-4-Konvertierungen und std::codecvt_utf8_utf16 für UTF-8/UTF-16-Konvertierungen.

Diese Klassenvorlage macht die implizite Zeichenkonvertierungsfunktionalität von std::basic_filebuf für jeden std::basic_streambuf verfügbar.

Inhaltsverzeichnis

Mitgliedertypen

Typ Definition
state_type Codecvt :: state_type

Datenmitglieder

Member Beschreibung
std:: streambuf * bufptr ein Zeiger auf den zugrundeliegenden Bytestrom-Puffer
( Nur zur Veranschaulichung dienendes Mitgliedsobjekt* )
Codecvt * cvtptr ein Zeiger auf das allokierte Konvertierungsobjekt
( Nur zur Veranschaulichung dienendes Mitgliedsobjekt* )
state_type cvtstate das Konvertierungszustandsobjekt
( Nur zur Veranschaulichung dienendes Mitgliedsobjekt* )

Memberfunktionen

Konstruiert einen neuen wbuffer_convert
(public member function)
operator=
Der Kopierzuweisungsoperator ist gelöscht
(public member function)
Zerstört den wbuffer_convert und seinen Konvertierungs-Facet
(public member function)
Gibt zurück oder ersetzt den zugrundeliegenden schmalen Streampuffer
(public member function)
Gibt den aktuellen Konvertierungsstatus zurück
(public member function)

Siehe auch

Zeichenkonvertierungen
Lokalitätsdefinierte Multibyte
(UTF-8, GB18030)
UTF-8
UTF-16
UTF-16 mbrtoc16 / c16rtomb (mit C11's DR488)

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 (ohne C11's DR488) 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 (nicht-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)
führt Konvertierungen zwischen einer Breitzeichen-Zeichenkette und einer Byte-Zeichenkette durch
(Klassentemplate)
(C++11) (deprecated in C++17) (removed in C++26)
konvertiert zwischen UTF-8 und UCS-2/UCS-4
(Klassentemplate)
(C++11) (deprecated in C++17) (removed in C++26)
konvertiert zwischen UTF-8 und UTF-16
(Klassentemplate)