Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Этот класс используется макросами преобразования строк CA2TEX, CA2CTEX, CT2WEX и CT2CWEX и типизированным CA2W.
Важно!
Этот класс и его члены нельзя использовать в приложениях, выполняемых в среде выполнения Windows.
template <int t_nBufferLength = 128>
class CA2WEX
t_nBufferLength
Размер буфера, используемого в процессе перевода. Длина по умолчанию составляет 128 байт.
Имя | Описание |
---|---|
CA2WEX::CA2WEX | Конструктор. |
CA2WEX::~CA2WEX | Деструктор |
Имя | Описание |
---|---|
CA2WEX::operator LPWSTR | Оператор преобразования. |
Имя | Описание |
---|---|
CA2WEX::m_psz | Элемент данных, в который хранится исходная строка. |
CA2WEX::m_szBuffer | Статический буфер, используемый для хранения преобразованной строки. |
Если в коде не требуется дополнительная функциональность, используйте CA2TEX, CA2CTEX, CT2WEX, CT2CWEX или CA2W.
Этот класс содержит статический буфер фиксированного размера, который используется для хранения результата преобразования. Если результат слишком велик, чтобы поместиться в статический буфер, класс выделяет память с помощью malloc, освобождая память при выходе объекта из области. Это гарантирует, что в отличие от макросов преобразования текста, доступных в предыдущих версиях ATL, этот класс безопасно используется в циклах и что он не переполняет стек.
Если класс пытается выделить память в куче и завершается ошибкой, он вызовет AtlThrow
аргумент E_OUTOFMEMORY.
По умолчанию классы преобразования ATL и макросы используют кодовую страницу ANSI текущего потока для преобразования. Если вы хотите переопределить это поведение для определенного преобразования, укажите кодовую страницу в качестве второго параметра конструктору класса.
Следующие макросы основаны на этом классе:
CA2TEX
CA2CTEX
CT2WEX
CT2CWEX
Следующий типdef основан на этом классе:
- CA2W
Сведения об этих макросах преобразования текста см. в разделе ATL и макросы преобразования строк MFC.
Пример использования этих макросов преобразования строк в ATL и MFC.
Заголовок: atlconv.h
Конструктор.
CA2WEX(LPCSTR psz, UINT nCodePage) throw(...);
CA2WEX(LPCSTR psz) throw(...);
psz
Текстовая строка, которая будет преобразована.
nCodePage
Кодовая страница, используемая для преобразования. Дополнительные сведения см. в обсуждении параметра кодовой страницы для функции Пакета SDK для Windows MultiByteToWideChar .
Выделяет буфер, используемый в процессе перевода.
Деструктор
~CA2WEX() throw();
Освобождает выделенный буфер.
Элемент данных, в который хранится исходная строка.
LPWSTR m_psz;
Статический буфер, используемый для хранения преобразованной строки.
wchar_t m_szBuffer[t_nBufferLength];
Оператор преобразования.
operator LPWSTR() const throw();
Возвращает текстовую строку в виде типа LPWSTR.
Класс CA2AEX
Класс CA2CAEX
Класс CW2AEX
Класс CW2CWEX
Класс CW2WEX
Общие сведения о классе