Dela via


wstring_convert-klass

Klassmallen wstring_convert utför konverteringar mellan en bred sträng och en bytesträng.

Syntax

template <class Codecvt, class Elem = wchar_t>
class wstring_convert

Parameterar

Codecvt
Språkvarianten som representerar konverteringsobjektet.

Elem
Elementtypen wide-character.

Anmärkningar

Klassmallen beskriver ett objekt som styr konverteringar mellan breda strängobjekt i klassen std::basic_string<Elem> och bytesträngsobjekt av klassen std::basic_string<char> (kallas std::stringäven ). Klassmallen definierar typerna wide_string och byte_string som synonymer för dessa två typer. Konvertering mellan en sekvens med Elem värden (lagras i ett wide_string objekt) och sekvenser i flerabyte (lagras i ett byte_string objekt) utförs av ett objekt av klassen Codecvt<Elem, char, std::mbstate_t>, som uppfyller kraven för standard-kodkonverteringsfasetter std::codecvt<Elem, char, std::mbstate_t>.

Ett objekt i den här klassmallen lagrar:

  • En bytesträng som ska visas på fel

  • En bred sträng som ska visas på fel

  • En pekare till det allokerade konverteringsobjektet (som frigörs när wbuffer_convert-objektet förstörs)

  • Ett konverteringstillståndsobjekt av typen state_type

  • Antal konverteringar

Konstruktörer

Konstruktor Beskrivning
wstring_convert Konstruerar ett objekt av typen wstring_convert.

Typedefs

Typnamn Beskrivning
byte_string En typ som representerar en bytesträng.
wide_string En typ som representerar en bred sträng.
state_type En typ som representerar konverteringstillståndet.
int_type En typ som representerar ett heltal.

Medlemsfunktioner

Medlemsfunktion Beskrivning
from_bytes Konverterar en bytesträng till en bred sträng.
to_bytes Konverterar en bred sträng till en bytesträng.
omvandlad Returnerar antalet lyckade konverteringar.
tillstånd Returnerar ett objekt som representerar konverteringens tillstånd.

Kravspecifikation

Rubrik:<Locale>

namnområde: std

wstring_convert::byte_string

En typ som representerar en bytesträng.

typedef std::basic_string<char> byte_string;

Anmärkningar

Typen är en synonym för std::basic_string<char>.

wstring_convert::konverterad

Returnerar antalet lyckade konverteringar.

size_t converted() const;

Returvärde

Antalet lyckade konverteringar.

Anmärkningar

Antalet lyckade konverteringar lagras i konverteringsantalsobjektet.

wstring_convert::from_bytes

Konverterar en bytesträng till en bred sträng.

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);

Parameterar

byte
Enelementsbytesekvensen som ska konverteras.

ptr
Den null-avslutade sekvensen med tecken i C-format som ska konverteras.

Bstr
Den byte_string konverteras.

första
Det första tecknet i ett intervall med tecken som ska konverteras.

senaste
Det sista tecknet i ett intervall med tecken som ska konverteras.

Returvärde

Ett brett strängobjekt som är resultatet av konverteringen.

Anmärkningar

Om konverteringstillståndsobjektetinte har konstruerats med ett explicit värde anges det till standardvärdet (det inledande konverteringstillståndet) innan konverteringen påbörjas. Annars lämnas den oförändrad.

Antalet indataelement som har konverterats lagras i konverteringsantalsobjektet. Om inget konverteringsfel inträffar returnerar medlemsfunktionen den konverterade breda strängen. Annars, om objektet har konstruerats med en initiator för wide-string-felmeddelandet, returnerar medlemsfunktionen wide-string-felmeddelandeobjektet. Annars genererar medlemsfunktionen ett objekt av klass range_error.

wstring_convert::int_type

En typ som representerar ett heltal.

typedef typename wide_string::traits_type::int_type int_type;

Anmärkningar

Typen är en synonym för wide_string::traits_type::int_type.

wstring_convert::state

Returnerar ett objekt som representerar konverteringens tillstånd.

state_type state() const;

Returvärde

Konverteringstillståndsobjektet som representerar konverteringens tillstånd.

wstring_convert::state_type

En typ som representerar konverteringstillståndet.

typedef typename Codecvt::state_type state_type;

Anmärkningar

Typen beskriver ett objekt som kan representera ett konverteringstillstånd. Typen är en synonym för Codecvt::state_type.

wstring_convert::to_bytes

Konverterar en bred sträng till en bytesträng.

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);

Parameterar

Röding
Det breda tecken som ska konverteras.

Wptr
Den null-avslutade sekvensen i C-format med början vid wptr, som ska konverteras.

Wstr
Den wide_string konverteras.

första
Det första elementet i ett område med element som ska konverteras.

senaste
Det sista elementet i ett område med element som ska konverteras.

Anmärkningar

Om konverteringstillståndsobjektetinte har konstruerats med ett explicit värde anges det till standardvärdet (det inledande konverteringstillståndet) innan konverteringen påbörjas. Annars lämnas den oförändrad.

Antalet indataelement som har konverterats lagras i konverteringsantalsobjektet. Om inget konverteringsfel inträffar returnerar medlemsfunktionen den konverterade bytesträngen. Annars returnerar medlemsfunktionen felmeddelandeobjektet bytesträng om objektet har konstruerats med en initialiserare för bytesträngsfelmeddelandet. Annars genererar medlemsfunktionen ett objekt av klass range_error.

wstring_convert::wide_string

En typ som representerar en bred sträng.

typedef std::basic_string<Elem> wide_string;

Anmärkningar

Typen är en synonym för std::basic_string<Elem>.

wstring_convert::wstring_convert

Konstruerar ett objekt av typen 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());

Parameterar

*Pcvt
Objektet av typen Codecvt som ska utföra konverteringen.

_Stat
Objektet av typen state_type som representerar konverteringstillståndet.

_Berr
Den byte_string visas på fel.

Werr
Den wide_string visas på fel.

Anmärkningar

Den första konstruktorn lagrar Pcvt_arg i konverteringsobjektet