Condividi tramite


Classe CA2WEX

Questa classe viene usata dalle macro di conversione di stringhe CA2TEX, CA2CTEX, CT2WEX e CT2CWEX e typedef CA2W.

Importante

Questa classe e i relativi membri non possono essere usati nelle applicazioni eseguite in Windows Runtime.

Sintassi

template <int t_nBufferLength = 128>
class CA2WEX

Parametri

t_nBufferLength
Dimensioni del buffer utilizzato nel processo di conversione. La lunghezza predefinita è di 128 byte.

Membri

Costruttori pubblici

Nome Descrizione
CA2WEX::CA2WEX Costruttore.
CA2WEX::~CA2WEX Distruttore.

Operatori pubblici

Nome Descrizione
CA2WEX::operator LPWSTR Operatore di conversione.

Membri dati pubblici

Nome Descrizione
CA2WEX::m_psz Membro dati che archivia la stringa di origine.
CA2WEX::m_szBuffer Buffer statico utilizzato per archiviare la stringa convertita.

Osservazioni:

A meno che non siano necessarie funzionalità aggiuntive, usare CA2TEX, CA2CTEX, CT2WEX, CT2CWEX o CA2W nel codice.

Questa classe contiene un buffer statico a dimensione fissa che viene usato per archiviare il risultato della conversione. Se il risultato è troppo grande per rientrare nel buffer statico, la classe alloca memoria usando malloc, liberando la memoria quando l'oggetto esce dall'ambito. Ciò garantisce che, a differenza delle macro di conversione del testo disponibili nelle versioni precedenti di ATL, questa classe è sicura da usare nei cicli e che non eseguirà l'overflow dello stack.

Se la classe tenta di allocare memoria nell'heap e non riesce, verrà chiamato AtlThrow con un argomento di E_OUTOFMEMORY.

Per impostazione predefinita, le classi e le macro di conversione ATL usano la tabella codici ANSI del thread corrente per la conversione. Se si vuole eseguire l'override di tale comportamento per una conversione specifica, specificare la tabella codici come secondo parametro per il costruttore per la classe .

Le macro seguenti sono basate su questa classe:

  • CA2TEX

  • CA2CTEX

  • CT2WEX

  • CT2CWEX

Il typedef seguente si basa su questa classe:

  • CA2W

Per una descrizione di queste macro di conversione di testo, vedere Macro di conversione di stringhe ATL e MFC.

Esempio

Per un esempio di utilizzo di queste macro di conversione di stringhe, vedere Macro di conversione di stringhe ATL e MFC.

Requisiti

Intestazione: atlconv.h

CA2WEX::CA2WEX

Costruttore.

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

Parametri

psz
Stringa di testo da convertire.

nCodePage
Tabella codici utilizzata per eseguire la conversione. Per altri dettagli, vedere la discussione sui parametri della tabella codici per la funzione Di Windows SDK MultiByteToWideChar .

Osservazioni:

Alloca il buffer usato nel processo di traduzione.

CA2WEX::~CA2WEX

Distruttore.

~CA2WEX() throw();

Osservazioni:

Libera il buffer allocato.

CA2WEX::m_psz

Membro dati che archivia la stringa di origine.

LPWSTR m_psz;

CA2WEX::m_szBuffer

Buffer statico utilizzato per archiviare la stringa convertita.

wchar_t m_szBuffer[t_nBufferLength];

CA2WEX::operator LPWSTR

Operatore di conversione.

operator LPWSTR() const throw();

Valore restituito

Restituisce la stringa di testo come tipo LPWSTR.

Vedi anche

Classe CA2AEX
Classe CA2CAEX
Classe CW2AEX
Classe CW2CWEX
Classe CW2WEX
Cenni preliminari sulla classe