CByteArray クラス
更新 : 2007 年 11 月
バイトの動的配列をサポートします。
class CByteArray : public CObject
解説
CByteArray のメンバ関数は、CObArray クラスのメンバ関数とほぼ同じです。メンバ関数については CObArray クラスの説明を参照してください。関数のパラメータや戻り値に CObject へのポインタが使われている箇所は BYTE に置き換えてください。
CObject* CObArray::GetAt( int <nIndex> ) const;
は、次のように置き換えます。
BYTE CByteArray::GetAt( int <nIndex> ) const;
CByteArray には、シリアル化および配列要素のダンプをサポートする IMPLEMENT_SERIAL マクロが組み込まれています。バイトの配列をアーカイブに格納するときに、オーバーロードされた出力ストリーム演算子 (<<) か Serialize メンバ関数を使用すると、配列の各要素が順次シリアル化されます。
メモ : |
---|
配列を使う場合は、あらかじめ SetSize 関数で配列のサイズを確定し、そのメモリを確保します。SetSize を使用せずに要素を配列に追加すると、配列が頻繁に再割り当てされ、コピーされます。頻繁に再割り当てとコピーを行うとパフォーマンスが低下し、メモリ断片化の原因になります。 |
デバッグ時に配列の各要素を出力する場合は、CDumpContext オブジェクトの深さを 1 以上に設定します。
CByteArray の使い方の詳細については、「コレクション クラス」を参照してください。
必要条件
ヘッダー : afxcoll.h