wstring_convert-Klasse
Die Klassenvorlage wstring_convert
führt Konvertierungen zwischen einer breiten Zeichenfolge und einer Bytezeichenfolge durch.
Syntax
template <class Codecvt, class Elem = wchar_t>
class wstring_convert
Parameter
Codecvt
Das Facet locale, das das Konvertierungsobjekt darstellt.
Elem
Der Breitzeichen-Elementtyp.
Hinweise
Die Klassenvorlage beschreibt ein Objekt, das Konvertierungen zwischen breiten Zeichenfolgenobjekten der Klasse std::basic_string<Elem>
und Bytezeichenfolgenobjekten der Klasse std::basic_string<char>
steuert (auch bekannt als std::string
). Die Klassenvorlage definiert die Typen wide_string
und byte_string
synonyme für diese beiden Typen. Konvertierung zwischen einer Sequenz von Elem
-Werten (in einem wide_string
-Objekt gespeichert) und Multibytesequenzen (in einem byte_string
-Objekt gespeichert) erfolgt durch ein Objekt der Klasse Codecvt<Elem, char, std::mbstate_t>
, das die Anforderungen des Facets std::codecvt<Elem, char, std::mbstate_t>
für die Standardcodekonvertierung erfüllt.
Ein Objekt dieser Klassenvorlage speichert:
Eine bei Fehlern anzuzeigende Bytezeichenfolge
Eine bei Fehlern anzuzeigende breite Zeichenfolge
Ein Zeiger auf das zugeordnete Konvertierungsobjekt (das freigegeben wird, wenn das wbuffer_convert-Objekt zerstört wird)
Ein Konvertierungsstatusobjekt vom Typ state_type
Eine Konvertierungsanzahl
Konstruktoren
Konstruktor | Beschreibung |
---|---|
wstring_convert | Konstruiert ein Objekt vom Typ wstring_convert . |
TypeDefs
Typname | Beschreibung |
---|---|
byte_string | Ein Typ, der eine Bytezeichenfolge darstellt. |
wide_string | Ein Typ, der eine breite Zeichenfolge darstellt. |
state_type | Ein Typ, der den Konvertierungszustand darstellt. |
int_type | Ein Typ, der eine ganze Zahl darstellt. |
Memberfunktionen
Memberfunktion | Beschreibung |
---|---|
from_bytes | Konvertiert eine Bytezeichenfolge in eine breite Zeichenfolge. |
to_bytes | Konvertiert eine breite Zeichenfolge in eine Bytezeichenfolge. |
converted | Gibt die Anzahl der erfolgreichen Konvertierungen zurück. |
state | Gibt ein Objekt zurück, das den Zustand für die Konvertierung darstellt. |
Anforderungen
Header:<locale>
Namespace: std
wstring_convert::byte_string
Ein Typ, der eine Bytezeichenfolge darstellt.
typedef std::basic_string<char> byte_string;
Hinweise
Der Typ ist ein Synonym für std::basic_string<char>
.
wstring_convert::converted
Gibt die Anzahl der erfolgreichen Konvertierungen zurück.
size_t converted() const;
Rückgabewert
Die Anzahl der erfolgreichen Konvertierungen.
Hinweise
Die Anzahl der erfolgreichen Konvertierungen wird im Konvertierungsanzahlobjekt gespeichert.
wstring_convert::from_bytes
Konvertiert eine Bytezeichenfolge in eine breite Zeichenfolge.
wide_string from_bytes(char Byte);
wide_string from_bytes(const char* ptr);
wide_string from_bytes(const byte_string& Bstr);
wide_string from_bytes(const char* first, const char* last);
Parameter
Byte
Die zu konvertierende Einzelelement-Bytesequenz.
ptr
Die auf NULL endende Zeichenfolge im C-Stil der zu konvertierenden Zeichen.
Bstr
Der zu konvertierende byte_string.
first
Das erste Zeichen in einem Bereich von zu konvertierenden Zeichen.
last
Das letzte Zeichen in einem Bereich von zu konvertierenden Zeichen.
Rückgabewert
Ein breites Zeichenfolgenobjekt, das sich aus der Konvertierung ergibt.
Hinweise
Wenn das Konvertierungsstatusobjekt nicht mit einem expliziten Wert erstellt wurde, wird es vor Beginn der Konvertierung auf den Standardwert (der ursprüngliche Konvertierungszustand) festgelegt. Andernfalls bleibt es unverändert.
Die Anzahl der erfolgreich konvertierten Eingabeelemente wird im Konvertierungsanzahlobjekt gespeichert. Wenn kein Konvertierungsfehler auftritt, gibt die Memberfunktion die konvertierte breite Zeichenfolge zurück. Wenn das Objekt mit einem Initialisierer für die Breitzeichen-Fehlermeldung erstellt wurde, gibt die Memberfunktion das Breitzeichen-Fehlermeldungsobjekt zurück. Andernfalls gibt die Memberfunktion ein Objekt der Klasse range_error aus.
wstring_convert::int_type
Ein Typ, der eine ganze Zahl darstellt.
typedef typename wide_string::traits_type::int_type int_type;
Hinweise
Der Typ ist ein Synonym für wide_string::traits_type::int_type
.
wstring_convert::state
Gibt ein Objekt zurück, das den Zustand für die Konvertierung darstellt.
state_type state() const;
Rückgabewert
Das Konvertierungsstatusobjekt, das den Status der Konvertierung darstellt.
Hinweise
wstring_convert::state_type
Ein Typ, der den Konvertierungszustand darstellt.
typedef typename Codecvt::state_type state_type;
Hinweise
Der Typ beschreibt ein Objekt, das einen Konvertierungszustand repräsentieren kann. Der Typ ist ein Synonym für Codecvt::state_type
.
wstring_convert::to_bytes
Konvertiert eine breite Zeichenfolge in eine Bytezeichenfolge.
byte_string to_bytes(Elem Char);
byte_string to_bytes(const Elem* Wptr);
byte_string to_bytes(const wide_string& Wstr);
byte_string to_bytes(const Elem* first, const Elem* last);
Parameter
Char
Die zu konvertierenden Breitzeichenfolgen.
Wptr
Die auf NULL endende Sequenz im C-Stil, die bei wptr
beginnt und konvertiert werden soll.
Wstr
Die zu konvertierende Zeichenfolge vom Typ wide_string.
first
Das erste Element in dem zu konvertierenden Elementbereich.
last
Das letzte Element in dem zu konvertierenden Elementbereich.
Hinweise
Wenn das Konvertierungsstatusobjekt nicht mit einem expliziten Wert erstellt wurde, wird es vor Beginn der Konvertierung auf den Standardwert (der ursprüngliche Konvertierungszustand) festgelegt. Andernfalls bleibt es unverändert.
Die Anzahl der erfolgreich konvertierten Eingabeelemente wird im Konvertierungsanzahlobjekt gespeichert. Wenn kein Konvertierungsfehler auftritt, gibt die Memberfunktion die konvertierte Bytezeichenfolge zurück. Wenn das Objekt mit einem Initialisierer für die Bytezeichen-Fehlermeldung erstellt wurde, gibt die Memberfunktion das Bytezeichen-Fehlermeldungsobjekt zurück. Andernfalls gibt die Memberfunktion ein Objekt der Klasse range_error aus.
wstring_convert::wide_string
Ein Typ, der eine breite Zeichenfolge darstellt.
typedef std::basic_string<Elem> wide_string;
Hinweise
Der Typ ist ein Synonym für std::basic_string<Elem>
.
wstring_convert::wstring_convert
Konstruiert ein Objekt vom Typ wstring_convert
.
wstring_convert(Codecvt *Pcvt = new Codecvt);
wstring_convert(Codecvt *Pcvt, state_type _State);
wstring_convert(const byte_string& _Berr, const wide_string& Werr = wide_string());
Parameter
*Pcvt
Das Objekt des Codecvt
-Typs zum Durchführen der Konvertierung.
_Zustand
Das Objekt vom Typ state_type, das den Konvertierungsstatus darstellt.
_Berr
Die bei Fehlern anzuzeigende byte_string.
Werr
Die bei Fehlern anzuzeigende wide_string.
Hinweise
Der erste Konstruktor speichert Pcvt_arg im Konvertierungsobjekt.