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