CObArray::SetSize
更新 : 2007 年 11 月
空の配列または要素を持つ配列のサイズを設定します。必要に応じてメモリを割り当てます。
void SetSize(
INT_PTR nNewSize,
INT_PTR nGrowBy = -1
);
パラメータ
nNewSize
新しい配列のサイズ (要素数) を指定します。0 以上であることが必要です。nGrowBy
サイズを増やす必要があるときに、確保する要素スロットの最小数を指定します。
解説
新しいサイズが古いサイズよりも小さい場合、配列は切り捨てられ、すべての未使用のメモリが解放されます。配列を使う前に、SetSize 関数を呼び出して配列のサイズを設定するのが効果的です。これで、項目を追加するたびに配列のメモリの再割り当てや要素のコピーの必要がなくなります。
パラメータ nGrowBy は、配列を拡張するときの内部メモリの割り当てに影響します。GetSize 関数や GetUpperBound 関数が返す配列のサイズには影響しません。
配列のサイズが増えた場合、新しく割り当てられた CObject * ポインタはすべて NULL に設定されます。
CObArray::SetSize に類似している他のメンバ関数を以下に示します。
クラス |
メンバ関数 |
---|---|
void SetSize( INT_PTRnNewSize, intnGrowBy = -1 ); throw( CMemoryException* ); |
|
void SetSize( INT_PTRnNewSize, intnGrowBy = -1 ); throw( CMemoryException* ); |
|
void SetSize( INT_PTRnNewSize, intnGrowBy = -1 ); throw( CMemoryException* ); |
|
void SetSize( INT_PTRnNewSize, intnGrowBy = -1 ); throw( CMemoryException* ); |
|
void SetSize( INT_PTRnNewSize, intnGrowBy = -1 ); throw( CMemoryException* ); |
|
void SetSize( INT_PTRnNewSize, intnGrowBy = -1 ); throw( CMemoryException* ); |
使用例
「CObArray::GetData」の例を参照してください。
必要条件
ヘッダー : afxcoll.h