La classe CW2AEX
Cette classe est utilisée par les macros de conversion de chaîne , CT2AEX
CW2TEX
, CW2CTEX
et CT2CAEX
le typedef CW2A
.
Important
Cette classe et ses membres ne peuvent pas être utilisés dans les applications qui s’exécutent dans Windows Runtime.
Syntaxe
template<int t_nBufferLength = 128>
class CW2AEX
Paramètres
t_nBufferLength
Taille de la mémoire tampon utilisée dans le processus de traduction. La longueur par défaut est 128 octets.
Membres
Constructeurs publics
Nom | Description |
---|---|
CW2AEX::CW2AEX |
Constructeur . |
CW2AEX::~CW2AEX |
Destructeur. |
Opérateurs publics
Nom | Description |
---|---|
CW2AEX ::operator LPSTR | Opérateur de conversion. |
Membres de données publics
Nom | Description |
---|---|
CW2AEX::m_psz |
Membre de données qui stocke la chaîne source. |
CW2AEX::m_szBuffer |
Mémoire tampon statique utilisée pour stocker la chaîne convertie. |
Notes
Sauf si des fonctionnalités supplémentaires sont requises, utilisez CT2AEX
, , CW2TEX
, CW2CTEX
, CT2CAEX
ou CW2A
dans votre code.
Cette classe contient une mémoire tampon statique de taille fixe utilisée pour stocker le résultat de la conversion. Si le résultat est trop volumineux pour s’adapter à la mémoire tampon statique, la classe alloue de la mémoire en libérant malloc
la mémoire lorsque l’objet sort de l’étendue. Cela garantit que, contrairement aux macros de conversion de texte disponibles dans les versions précédentes d’ATL, cette classe est sûre à utiliser dans des boucles et qu’elle ne dépasse pas la pile.
Si la classe tente d’allouer de la mémoire sur le tas et échoue, elle appelle AtlThrow
avec un argument de E_OUTOFMEMORY
.
Par défaut, les classes et macros de conversion ATL utilisent la page de codes ANSI du thread actuel pour la conversion. Si vous souhaitez remplacer ce comportement pour une conversion spécifique, spécifiez la page de codes en tant que deuxième paramètre vers le constructeur de la classe.
Les macros suivantes sont basées sur cette classe :
CT2AEX
CW2TEX
CW2CTEX
CT2CAEX
Le typedef suivant est basé sur cette classe :
CW2A
Pour une discussion sur ces macros de conversion de texte, consultez les macros de conversion de chaîne ATL et MFC.
Exemple
Consultez les macros de conversion de chaîne ATL et MFC pour obtenir un exemple d’utilisation de ces macros de conversion de chaîne.
Spécifications
En-tête : atlconv.h
CW2AEX::CW2AEX
Constructeur .
CW2AEX(LPCWSTR psz, UINT nCodePage) throw(...);
CW2AEX(LPCWSTR psz) throw(...);
Paramètres
psz
Chaîne de texte à convertir.
nCodePage
Page de codes utilisée pour effectuer la conversion. Pour plus d’informations, consultez la discussion sur les paramètres de la page de codes pour la fonction MultiByteToWideChar
du Kit de développement logiciel (SDK) Windows.
Notes
Alloue la mémoire tampon utilisée dans le processus de traduction.
CW2AEX::~CW2AEX
Destructeur.
~CW2AEX() throw();
Notes
Libère la mémoire tampon allouée.
CW2AEX::m_psz
Membre de données qui stocke la chaîne source.
LPSTR m_psz;
CW2AEX::m_szBuffer
Mémoire tampon statique utilisée pour stocker la chaîne convertie.
char m_szBuffer[t_nBufferLength];
CW2AEX::operator LPSTR
Opérateur de conversion.
operator LPSTR() const throw();
Valeur de retour
Retourne la chaîne de texte en tant que type LPSTR
.
Voir aussi
CA2AEX
Classe
CA2CAEX
Classe
CA2WEX
Classe
CW2CWEX
Classe
CW2WEX
Classe
Vue d’ensemble de la classe