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