CStringArray クラス
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 メンバー関数を使います。各要素は順次シリアル化されます。
注意
配列を使う場合は、あらかじめ SetSize 関数で配列のサイズを確定し、そのメモリを確保します。 SetSize を使用せずに要素を配列に追加すると、配列が頻繁に再割り当てされ、コピーされます。 頻繁に再割り当てとコピーを行うとパフォーマンスが低下し、メモリ断片化の原因になります。
配列の文字列要素を個別にダンプするには、ダンプ コンテキストの深さを 1 以上に設定します。
CString 配列を削除するか、その要素を削除すると、該当する文字列メモリが解放されます。
CStringArray の使い方の詳細については、「コレクション クラス」を参照してください。
必要条件
**ヘッダー:**afxcoll.h