Compartilhar via


Classe CA2AEX

Essa classe é usada pelas macros de conversão de cadeia de caracteres CA2TEX e CT2AEX e pelo typedef CA2A.

Importante

Essa classe e os respectivos membros não podem ser usados em aplicativos executados no Windows Runtime.

Sintaxe

template <int t_nBufferLength = 128>
class CA2AEX

Parâmetros

t_nBufferLength
O tamanho do buffer usado no processo de tradução. O comprimento padrão é de 128 bytes.

Membros

Construtores públicos

Nome Descrição
CA2AEX::CA2AEX O construtor .
CA2AEX::~CA2AEX O destruidor.

Operadores públicos

Nome Descrição
CA2AEX::operator LPSTR Operador de conversão.

Membros de Dados Públicos

Nome Descrição
CA2AEX::m_psz O membro de dados que armazena a cadeia de caracteres fonte.
CA2AEX::m_szBuffer O buffer estático, usado para armazenar a cadeia de caracteres convertida.

Comentários

A menos que a funcionalidade extra seja necessária, use CA2TEX, CT2AEX ou CA2A em seu próprio código.

Essa classe contém um buffer estático de tamanho fixo que é usado para armazenar o resultado da conversão. Se o resultado for muito grande para caber no buffer estático, a classe aloca memória usando malloc, liberando a memória quando o objeto sair do escopo. Isso vai garantir que, ao contrário das macros de conversão de texto disponíveis em versões anteriores da ATL, essa classe será segura para usar em loops e não causará estouro da pilha.

Se a classe tentar alocar memória no heap e falhar, ela chamará AtlThrow com um argumento de E_OUTOFMEMORY.

Por padrão, as macros e classes de conversão da ATL usam a página de código ANSI dos threads atuais para a conversão.

As seguintes macros são baseadas nessa classe:

  • CA2TEX

  • CT2AEX

O seguinte typedef baseia-se nessa classe:

  • CA2A

Para ver uma discussão sobre essas macros de conversão de texto, confira Macros de conversão de cadeia de caracteres da ATL e MFC.

Exemplo

Confira Macros de conversão de cadeia de caracteres da ATL e MFC para obter um exemplo de como usar essas macros de conversão de cadeia de caracteres.

Requisitos

Cabeçalho: atlconv.h

CA2AEX::CA2AEX

O construtor .

CA2AEX(LPCSTR psz, UINT nCodePage) throw(...);
CA2AEX(LPCSTR psz) throw(...);

Parâmetros

psz
A cadeia de caracteres de texto a ser convertida.

nCodePage
Não usado para essa classe.

Comentários

Cria o buffer necessário para a tradução.

CA2AEX::~CA2AEX

O destruidor.

~CA2AEX() throw();

Comentários

Libera o buffer alocado.

CA2AEX::m_psz

O membro de dados que armazena a cadeia de caracteres fonte.

LPSTR m_psz;

CA2AEX::m_szBuffer

O buffer estático, usado para armazenar a cadeia de caracteres convertida.

char m_szBuffer[ t_nBufferLength];

CA2AEX::operator LPSTR

Operador de conversão.

operator LPSTR() const throw();

Valor de retorno

Retorna a cadeia de caracteres de texto como tipo LPSTR.

Confira também

Classe CA2CAEX
Classe CA2WEX
Classe CW2AEX
Classe CW2CWEX
Classe CW2WEX
Visão geral da aula