次の方法で共有


CObArray::SetSize

空の配列または要素を持つ配列のサイズを設定します。必要に応じてメモリを割り当てます。

void SetSize(
   INT_PTR nNewSize,
   INT_PTR nGrowBy = -1 
);

パラメーター

  • nNewSize
    新しい配列のサイズ (要素数) を指定します。 0 以上であることが必要です。

  • nGrowBy
    サイズを増やす必要があるときに、確保する要素スロットの最小数を指定します。

解説

新しいサイズが古いサイズよりも小さい場合、配列は切り捨てられ、すべての未使用のメモリが解放されます。 配列を使う前に、SetSize 関数を呼び出して配列のサイズを設定するのが効果的です。 これで、項目を追加するたびに配列のメモリの再割り当てや要素のコピーの必要がなくなります。

パラメーター nGrowBy は、配列を拡張するときの内部メモリの割り当てに影響します。 GetSize 関数や GetUpperBound 関数が返す配列のサイズには影響しません。

配列のサイズが増えた場合、新しく割り当てられた CObject * ポインターはすべて NULL に設定されます。

CObArray::SetSize に類似している他のメンバー関数を以下に示します。

Class

メンバー関数

CByteArray

void SetSize( INT_PTR nNewSize, int nGrowBy = -1 );

    throw( CMemoryException* );

CDWordArray

void SetSize( INT_PTR nNewSize, int nGrowBy = -1 );

    throw( CMemoryException* );

CPtrArray

void SetSize( INT_PTR nNewSize, int nGrowBy = -1 );

    throw( CMemoryException* );

CStringArray

void SetSize( INT_PTR nNewSize, int nGrowBy = -1 );

    throw( CMemoryException* );

CUIntArray

void SetSize( INT_PTR nNewSize, int nGrowBy = -1 );

    throw( CMemoryException* );

CWordArray

void SetSize( INT_PTR nNewSize, int nGrowBy = -1 );

    throw( CMemoryException* );

使用例

CObArray::GetData」の例を参照してください。

必要条件

**ヘッダー:**afxcoll.h

参照

参照

CObArray クラス

階層図

その他の技術情報

CObArray のメンバー