CAtlArray::RemoveAt
配列から 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