CA2AEX クラス
このクラスは、文字列変換マクロ CA2TEX と CT2AEX、および typedef CA2A によって使用されます。
重要
このクラスとそのメンバーは、Windows ランタイムで実行するアプリケーションで使用することはできません。
構文
template <int t_nBufferLength = 128>
class CA2AEX
パラメーター
t_nBufferLength
変換プロセスで使用されるバッファーのサイズ。 既定の長さは 128 バイトです。
メンバー
パブリック コンストラクター
名前 | 説明 |
---|---|
CA2AEX::CA2AEX | コンストラクター。 |
CA2AEX::~CA2AEX | デストラクター。 |
パブリック演算子
名前 | 説明 |
---|---|
CA2AEX::operator LPSTR | 変換演算子です。 |
パブリック データ メンバー
名前 | 説明 |
---|---|
CA2AEX::m_psz | ソース文字列を格納するデータ メンバーです。 |
CA2AEX::m_szBuffer | 変換された文字列を格納するために使用される静的バッファーです。 |
解説
追加機能が必要な場合を除き、コードでは、CA2TEX、CT2AEX、または CA2A を使用してください。
このクラスには、変換の結果を格納するために使用される固定サイズの静的バッファーが含まれています。 結果が大きすぎて静的バッファーに収まらない場合、このクラスでは、malloc を使用してメモリを割り当て、そのオブジェクトがスコープから外れときにそのメモリを解放します。 これにより、以前のバージョンの ATL で使用できたテキスト変換マクロとは異なり、このクラスはループ内で安全に使用でき、スタックがオーバーフローすることはありません。
このクラスがヒープ上のメモリを割り当てようとして失敗した場合は、引数 E_OUTOFMEMORY を使用して AtlThrow
が呼び出されます。
既定では、現在のスレッドの ANSI コード ページが、ATL の変換クラスとマクロによって、変換のために使用されます。
次のマクロは、このクラスに基づいています。
CA2TEX
CT2AEX
次の typedef は、このクラスに基づいています。
- CA2A
これらのテキスト変換マクロの詳細については、「ATL および MFC 文字列変換マクロ」を参照してください。
例
これらの文字列変換マクロの使用例については、「ATL および MFC 文字列変換マクロ」を参照してください。
要件
ヘッダー: atlconv.h
CA2AEX::CA2AEX
コンストラクター。
CA2AEX(LPCSTR psz, UINT nCodePage) throw(...);
CA2AEX(LPCSTR psz) throw(...);
パラメーター
psz
変換対象のテキスト文字列です。
nCodePage
このクラスでは使用されません。
解説
翻訳に必要なバッファーを作成します。
CA2AEX::~CA2AEX
デストラクター。
~CA2AEX() throw();
解説
割り当て済みのバッファーを解放します。
CA2AEX::m_psz
ソース文字列を格納するデータ メンバーです。
LPSTR m_psz;
CA2AEX::m_szBuffer
変換された文字列を格納するために使用される静的バッファーです。
char m_szBuffer[ t_nBufferLength];
CA2AEX::operator LPSTR
変換演算子です。
operator LPSTR() const throw();
戻り値
LPSTR 型のテキスト文字列を返します。
関連項目
CA2CAEX クラス
CA2WEX クラス
CW2AEX クラス
CW2CWEX クラス
CW2WEX クラス
クラスの概要