codecvt – třída
Třída šablony popisující objekt, který může sloužit jako podmínka národního prostředí.Dokáže řídit převody mezi sekvencí hodnot používanou ke kódování znaků v rámci programu a sekvencí hodnot používanou ke kódování znaků mimo program.
template<class CharType, class Byte, class StateType>
class codecvt : public locale::facet, codecvt_base;
Parametry
CharType
Typ používaný v rámci programu ke kódování znaků.Byte
Typ použitý ke kódování znaků mimo program.StateType
Typ, který lze použít k reprezentaci průběžných stavů převodu mezi interními a externími typy znázornění znaků.
Poznámky
Třída šablony popisující objekt, který může sloužit jako omezující vlastnost národního prostředí pro řízení převodů mezi sekvencí hodnot typu CharType a sekvencí hodnot typu Byte.Třída StateType charakterizuje transformaci a objekt třídy StateType během převodu uchovává všechny nezbytné informace o stavu.
Interní kódování používá znázornění s pevným počtem bajtů na znak, obvykle buď typu char, nebo wchar_t.
Stejně jako u omezující vlastnosti národního prostředí má statický objekt id počáteční uloženou hodnotu nula.První pokus o přístup k jeho uložené hodnotě uloží jedinečnou kladnou hodnotu vid.
Verze šablony do_in a do_out vždy vrátí codecvt_base::noconv.
Standardní knihovna jazyka C++ definuje několik explicitních specializací:
template<>
codecvt<wchar_t, char, mbstate_t>
převádí mezi sekvencemi wchar_t a char.
template<>
codecvt<char16_t, char, mbstate_t>
převádí mezi sekvencemi char16_t s kódováním UTF-16 a sekvencemi char s kódováním UTF-8.
template<>
codecvt<char32_t, char, mbstate_t>
převádí mezi sekvencemi char32_t s kódováním UTF-32 (UCS-4) a sekvencemi char s kódováním UTF-8.
Konstruktory
Konstruktor pro objekty třídy codecvt, který slouží jako omezující vlastnost národního prostředí pro zpracování převodů. |
Typedefs
Typ znaku, který se používá pro externí reprezentace. |
|
Typ znaku, který se používá pro interní reprezentace. |
|
Typ znaku, který se používá k reprezentaci průběžných stavů během převodu mezi interními a externími znázorněními. |
Členské funkce
Ověřuje, zda je nutné provést nějaké převody. |
|
Virtuální funkce volaná k ověření, zda je nutné provést nějaké převody. |
|
Virtuální funkce ověřující, zda kódování toku Byte závisí na stavu a zda je poměr mezi použitou hodnotou Byte a vygenerovanou hodnotou CharType konstantní. Pokud ano, stanoví hodnotu tohoto poměru. |
|
Virtuální funkce volaná k převedení sekvence interních Byte na sekvenci externích CharType. |
|
Virtuální funkce, která určuje, kolik hodnot Byte z dané sekvence externích Byte vytvoří maximální počet interních CharType a vrátí daný počet Byte. |
|
Virtuální funkce, která vrátí maximální počet externích bajtů nezbytných k vytvoření jednoho interního CharType. |
|
Virtuální funkce volaná k převedení sekvence interních CharType na sekvenci externích bajtů. |
|
Virtuální funkce volána k poskytnutí Byte potřebných při převodu závislém na stavu k dokončení posledního znaku v sekvenci Byte. |
|
Ověřuje, zda kódování toku Byte závisí na stavu a zda je poměr mezi použitou hodnotou Byte a vygenerovanou hodnotou CharType konstantní. Pokud ano, stanoví hodnotu tohoto poměru. |
|
Převede externí znázornění sekvence Byte na interní znázornění sekvence CharType. |
|
Určí, kolik hodnot Byte z dané sekvence externích Byte vytvoří maximální počet interních CharType a vrátí daný počet Byte. |
|
Vrátí maximální počet externích Byte nezbytných k vytvoření jednoho interního CharType. |
|
Převede sekvenci interních CharType na sekvenci externích Byte. |
|
Poskytne externí Byte potřebné při převodu závislém na stavu k dokončení posledního znaku v sekvenci Byte. |
Požadavky
Hlavička: <locale>
Obor názvů: std