CW2AEX
-Klasse
Diese Klasse wird von den Zeichenfolgenkonvertierungsmakros CT2AEX
, CW2TEX
, CW2CTEX
, und CT2CAEX
die Typedef CW2A
verwendet.
Wichtig
Diese Klasse und ihre Member können nicht in Anwendungen verwendet werden, die in der Windows-Runtime ausgeführt werden.
Syntax
template<int t_nBufferLength = 128>
class CW2AEX
Parameter
t_nBufferLength
Die Größe des puffers, der im Übersetzungsprozess verwendet wird. Die Standardlänge beträgt 128 Bytes.
Member
Öffentliche Konstruktoren
Name | Beschreibung |
---|---|
CW2AEX::CW2AEX |
Der Konstruktor. |
CW2AEX::~CW2AEX |
Der Destruktor. |
Öffentliche Operatoren
Name | Beschreibung |
---|---|
CW2AEX::operator LPSTR | Konvertierungsoperator. |
Öffentliche Datenmember
Name | Beschreibung |
---|---|
CW2AEX::m_psz |
Das Datenelement, das die Quellzeichenfolge speichert. |
CW2AEX::m_szBuffer |
Der statische Puffer, der zum Speichern der konvertierten Zeichenfolge verwendet wird. |
Hinweise
Sofern keine zusätzlichen Funktionen erforderlich sind, verwenden CT2AEX
Sie , , CW2TEX
, CW2CTEX
, , CT2CAEX
oder CW2A
in Ihrem Code.
Diese Klasse enthält einen statischen Puffer mit fester Größe, der zum Speichern des Ergebnisses der Konvertierung verwendet wird. Wenn das Ergebnis zu groß ist, um in den statischen Puffer einzupassen, weist die Klasse Arbeitsspeicher zu, malloc
wobei der Speicher freigegeben wird, wenn das Objekt den Bereich nicht überschreitet. Dadurch wird sichergestellt, dass diese Klasse im Gegensatz zu Textkonvertierungsmakros, die in früheren Versionen von ATL verfügbar sind, sicher in Schleifen verwendet werden kann und der Stapel nicht überläuft.
Wenn die Klasse versucht, Speicher für den Heap zuzuweisen und fehlschlägt, wird AtlThrow
sie mit einem Argument von E_OUTOFMEMORY
.
Standardmäßig verwenden die ATL-Konvertierungsklassen und -Makros die ANSI-Codeseite des aktuellen Threads für die Konvertierung. Wenn Sie dieses Verhalten für eine bestimmte Konvertierung außer Kraft setzen möchten, geben Sie die Codeseite als zweiten Parameter für den Konstruktor für die Klasse an.
Die folgenden Makros basieren auf dieser Klasse:
CT2AEX
CW2TEX
CW2CTEX
CT2CAEX
Der folgende Typedef basiert auf dieser Klasse:
CW2A
Eine Erläuterung dieser Textkonvertierungsmakros finden Sie unter ATL- und MFC-Zeichenfolgenkonvertierungsmakros.
Beispiel
Ein Beispiel für die Verwendung dieser Zeichenfolgenkonvertierungsmakros finden Sie unter ATL- und MFC-Zeichenfolgenkonvertierungsmakros.
Anforderungen
Header: atlconv.h
CW2AEX::CW2AEX
Der Konstruktor.
CW2AEX(LPCWSTR psz, UINT nCodePage) throw(...);
CW2AEX(LPCWSTR psz) throw(...);
Parameter
psz
Die zu konvertierende Textzeichenfolge.
nCodePage
Die Codeseite, die zum Ausführen der Konvertierung verwendet wird. Weitere Informationen finden Sie in der Diskussion zu den Codeseitenparametern für die Windows SDK-Funktion MultiByteToWideChar
.
Hinweise
Weist den puffer zu, der im Übersetzungsprozess verwendet wird.
CW2AEX::~CW2AEX
Der Destruktor.
~CW2AEX() throw();
Hinweise
Gibt den zugeordneten Puffer frei.
CW2AEX::m_psz
Das Datenelement, das die Quellzeichenfolge speichert.
LPSTR m_psz;
CW2AEX::m_szBuffer
Der statische Puffer, der zum Speichern der konvertierten Zeichenfolge verwendet wird.
char m_szBuffer[t_nBufferLength];
CW2AEX::operator LPSTR
Konvertierungsoperator.
operator LPSTR() const throw();
Rückgabewert
Gibt die Textzeichenfolge als Typ LPSTR
zurück.
Siehe auch
CA2AEX
Klasse
CA2CAEX
Klasse
CA2WEX
Klasse
CW2CWEX
Klasse
CW2WEX
Klasse
Klassenübersicht