次の方法で共有


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 クラス
クラスの概要