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