std::wbuffer_convert
Определено в заголовке <locale> | ||
|---|---|---|
template<
class Codecvt,
class Elem = wchar_t,
class Tr = std::char_traits<Elem>
> class wbuffer_convert : public std::basic_streambuf<Elem, Tr>
| (с C++11) (устарело в C++17) |
std::wbuffer_convert — это обертка над буфером потока типа std::basic_streambuf<char>, которая придает ему вид std::basic_streambuf<Elem>. Все ввод-вывод, выполняемые через std::wbuffer_convert, проходит преобразование символов, определённое объектом-фасетом Codecvt. std::wbuffer_convert берет на себя управление объектом-фасетом преобразования и не может использовать фасет, управляемый локали. Стандартные фасеты, пригодные для использования с std::wbuffer_convert, — это std::codecvt_utf8 для преобразований UTF-8/UCS-2 и UTF-8/UCS-4 и std::codecvt_utf8_utf16 для преобразований UTF-8/UTF-16.
Этот шаблон класса предоставляет функциональность неявного преобразования символов std::basic_filebuf для любого std::basic_streambuf.
Типы членов
| Тип члена | Определение |
|---|---|
state_type | Codecvt::state_type |
Члены-функции
создает новый wbuffer_convert (публичная функция-член) |
|
| operator= | оператор присваивания по копированию удален (публичная функция-член) |
уничтожает wbuffer_convert и его объект-фасет преобразования (публичная функция-член) |
|
| возвращает или заменяет базовую узкую буферную строку потока (публичная функция-член) |
|
| возвращает текущее состояние преобразования (публичная функция-член) |
См. также
| Преобразование символов | Многобайтовые преобразования, определённые в локали (UTF-8, GB18030) | UTF-8 | UTF-16 |
|---|---|---|---|
| UTF-16 |
mbrtoc16 / c16rtomb (с DR488 C11) |
| Н/Д |
| UCS-2 |
c16rtomb (без DR488 C11) |
codecvt_utf8<char16_t> |
codecvt_utf16<char16_t> |
| UTF-32 |
|
|
|
| системный wchar_t: UTF-32 (не Windows) |
|
codecvt_utf8<wchar_t> |
codecvt_utf16<wchar_t> |
|
(C++11)(устарело в C++17) | выполняет преобразования между широкой строкой и строкой байтов (шаблон класса) |
|
(C++11)(устарело в C++17)(удалено в C++26) | выполняет преобразования между UTF-8 и UCS-2/UCS-4 (шаблон класса) |
|
(C++11)(устарело в C++17)(удалено в C++26) | выполняет преобразования между UTF-8 и UTF-16 (шаблон класса) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/locale/wbuffer_convert