次の方法で共有


CStringArray クラス

更新 : 2007 年 11 月

CString オブジェクトの配列をサポートします。

class CStringArray : public CObject

解説

CStringArray のメンバ関数は、CObArray クラスのメンバ関数とほぼ同じです。メンバ関数については CObArray クラスの説明を参照してください。関数の戻り値として CObject ポインタが使われている場合は、CString ポインタではなく、CString に置き換えてください。関数のパラメータとして CObject へのポインタが使われている箇所は LPCTSTR に置き換えてください。

CObject* CObArray::GetAt( int <nIndex> ) const;

は、次のように置き換えます。

CString CStringArray::GetAt( int <nIndex> ) const;

また、

void SetAt( int <nIndex>, CObject* <newElement> )

は、次のようになります。

void SetAt( int <nIndex>, LPCTSTR <newElement> )

CStringArray には、シリアル化および配列要素のダンプをサポートする IMPLEMENT_SERIAL マクロが組み込まれています。CString オブジェクトの配列をアーカイブに保存するには、オーバーロード出力ストリーム演算子または Serialize メンバ関数を使います。各要素は順次シリアル化されます。

tddz3etf.alert_note(ja-jp,VS.90).gifメモ :

配列を使う場合は、あらかじめ SetSize 関数で配列のサイズを確定し、そのメモリを確保します。SetSize を使用せずに要素を配列に追加すると、配列が頻繁に再割り当てされ、コピーされます。頻繁に再割り当てとコピーを行うとパフォーマンスが低下し、メモリ断片化の原因になります。

配列の文字列要素を個別にダンプするには、ダンプ コンテキストの深さを 1 以上に設定します。

CString 配列を削除するか、その要素を削除すると、該当する文字列メモリが解放されます。

CStringArray の使い方の詳細については、「コレクション クラス」を参照してください。

必要条件

ヘッダー : afxcoll.h

参照

参照

CObject クラス

階層図

その他の技術情報

CStringArray のメンバ