次の方法で共有


CAtlArray::RemoveAt

更新 : 2007 年 11 月

配列から 1 つ以上の要素を削除します。

void RemoveAt(
   size_t iElement,
   size_t nCount = 1 
);

パラメータ

  • iElement
    削除する先頭の要素のインデックス。

  • nCount
    削除する要素の数。

解説

配列から 1 つ以上の要素を削除します。残った要素は、削除された要素の分だけインデックスの値が小さくなります。上限の値も小さくなりますが、CAtlArray::FreeExtra が呼び出されるまでメモリは解放されません。

デバッグ ビルドでは、CAtlArray オブジェクトが無効な場合、または iElement と nCount の合計数が配列要素の合計数を超えた場合、ATLASSERT が出力されます。製品版ビルドでは、無効なパラメータによって、予期しない結果が引き起こされることがあります。

使用例

// Declare an array of chars
CAtlArray<char> cMyArray;

// Add ten elements to the array
for (int a = 0; a < 10; a++)
{
   cMyArray.Add('*');
}

// Remove five elements starting with
// the element at position 1
cMyArray.RemoveAt(1, 5);

// Free memory
cMyArray.FreeExtra();

// Confirm size of array
ATLASSERT(cMyArray.GetCount() == 5);   

必要条件

ヘッダー : atlcoll.h

参照

参照

CAtlArray クラス

CAtlArray::RemoveAll

その他の技術情報

CAtlArray メンバ