Share via


CW2AEX-klasse

Opmerking

De ATL (Active Template Library) wordt nog steeds ondersteund. We voegen echter geen functies meer toe of werken de documentatie bij.

Deze klasse wordt gebruikt door de tekenreeksconversiemacro's CT2AEX, CW2TEXen CW2CTEX, en CT2CAEXde typedef CW2A.

Belangrijk

Deze klasse en de bijbehorende leden kunnen niet worden gebruikt in toepassingen die worden uitgevoerd in Windows Runtime.

Syntaxis

template<int t_nBufferLength = 128>
class CW2AEX

Parameterwaarden

t_nBufferLength
De grootte van de buffer die in het vertaalproces wordt gebruikt. De standaardlengte is 128 bytes.

Leden

Openbare constructors

Naam Description
CW2AEX::CW2AEX De constructor.
CW2AEX::~CW2AEX De destructor.

Openbare operators

Naam Description
CW2AEX::operator LPSTR Conversieoperator.

Publieke dataleden

Naam Description
CW2AEX::m_psz Het gegevenslid waarin de brontekenreeks wordt opgeslagen.
CW2AEX::m_szBuffer De statische buffer, die wordt gebruikt om de geconverteerde tekenreeks op te slaan.

Opmerkingen

Tenzij extra functionaliteit vereist is, gebruiktCT2AEX, CW2TEX, of CW2CTEXCT2CAEXCW2A in uw code.

Deze klasse bevat een statische buffer met vaste grootte die wordt gebruikt om het resultaat van de conversie op te slaan. Als het resultaat te groot is om in de statische buffer te passen, wijst de klasse geheugen toe met behulp van malloc, waardoor het geheugen vrij komt wanneer het object buiten het bereik valt. Dit zorgt ervoor dat, in tegenstelling tot tekstconversiemacro's die beschikbaar zijn in eerdere versies van ATL, deze klasse veilig is voor gebruik in lussen en dat deze de stack niet overloopt.

Als de klasse probeert geheugen toe te wijzen aan de heap en mislukt, wordt het aangeroepen AtlThrow met een argument van E_OUTOFMEMORY.

Standaard gebruiken de ATL-conversieklassen en -macro's de ANSI-codepagina van de huidige thread voor de conversie. Als u dat gedrag voor een specifieke conversie wilt overschrijven, geeft u de codepagina op als de tweede parameter voor de constructor voor de klasse.

De volgende macro's zijn gebaseerd op deze klasse:

  • CT2AEX

  • CW2TEX

  • CW2CTEX

  • CT2CAEX

De volgende typedef is gebaseerd op deze klasse:

  • CW2A

Zie ATL- en MFC-tekenreeksconversiemacro's voor een bespreking van deze tekstconversiemacro's.

Example

Zie ATL- en MFC-tekenreeksconversiemacro's voor een voorbeeld van het gebruik van deze tekenreeksconversiemacro's.

Requirements

Rubriek:atlconv.h

CW2AEX::CW2AEX

De constructor.

CW2AEX(LPCWSTR psz, UINT nCodePage) throw(...);
CW2AEX(LPCWSTR psz) throw(...);

Parameterwaarden

psz
De tekenreeks die moet worden geconverteerd.

nCodePage
De codepagina die wordt gebruikt om de conversie uit te voeren. Zie de parameterdiscussie van de codepagina voor de Windows SDK-functie MultiByteToWideChar voor meer informatie.

Opmerkingen

Hiermee wijst u de buffer toe die in het vertaalproces wordt gebruikt.

CW2AEX::~CW2AEX

De destructor.

~CW2AEX() throw();

Opmerkingen

Hiermee wordt de toegewezen buffer vrijgemaakt.

CW2AEX::m_psz

Het gegevenslid waarin de brontekenreeks wordt opgeslagen.

LPSTR m_psz;

CW2AEX::m_szBuffer

De statische buffer, die wordt gebruikt om de geconverteerde tekenreeks op te slaan.

char m_szBuffer[t_nBufferLength];

CW2AEX::operator LPSTR

Conversieoperator.

operator LPSTR() const throw();

Retourwaarde

Retourneert de tekenreeks als type LPSTR.

Zie ook

CA2AEX klasse
CA2CAEX klasse
CA2WEX klasse
CW2CWEX klasse
CW2WEX klasse
Overzicht van klassen