<codecvt>
Определяет несколько шаблонов классов, описывающих объекты на основе кодекvt шаблона класса. Эти объекты могут служить как аспекты языкового стандарта для управления преобразованиями между последовательностями значений типа Elem
и последовательностями значений типа char
.
Синтаксис
#include <codecvt>
Замечания
Аспекты языкового стандарта, объявленные в этом заголовке, преобразуются между несколькими кодировками символов. Для расширенных символов (хранящихся в программе в виде целых чисел фиксированного размера):
UCS-4 — в кодировке Юникод (ISO 10646) в рамках программы в виде 32-разрядного целого числа;
UCS-2 — в кодировке Юникод в рамках программы в виде 16-разрядного целого числа;
UTF-16 — в кодировке Юникод в рамках программы в виде одного или двух 16-разрядных целых чисел. (Обратите внимание, что это не соответствует всем требованиям допустимой кодировки для стандартного C или standard C++. Тем не менее, она широко используется как такая.)
Для потоков байтов (хранящихся в файле, передаваемых в виде последовательности байтов или сохраненных в программе в массиве char
):
UTF-8 — в кодировке Юникод в потоке байтов как один или несколько 8-битовых байтов с детерминированным порядком байтов;
UTF-16LE — в кодировке Юникод в потоке байтов в виде UTF-16 с каждым 16-разрядным целым числом, представленным в виде двух 8-битовых байт, с первым менее старшим байтом;
UTF-16BE — в кодировке Юникод в потоке байтов в виде UTF-16 с каждым 16-разрядным целым числом, представленным в виде двух 8-битовых байт, с первым более старшим байтом.
Перечисления
Имя | Описание |
---|---|
codecvt_mode | Задает сведения о конфигурации для аспектов языкового стандарта. |
Классы
Класс | Description |
---|---|
codecvt_utf8 | Представляет аспект языкового стандарта, который выполняет преобразование между расширенными символами в кодировке UCS-2 или UCS-4 и потоком байтов в кодировке UTF-8. |
codecvt_utf8_utf16 | Представляет аспект языкового стандарта, который выполняет преобразование между расширенными символами в кодировке UTF-16 и потоком байтов в кодировке UTF-8. |
codecvt_utf16 | Представляет аспект языкового стандарта, который выполняет преобразование между расширенными символами в кодировке UCS-2 или UCS-4 и потоком байтов в кодировке UTF-16LE или UTF-16BE. |
Требования
Заголовок:<codecvt>
Пространство имен: std