CObArray::RemoveAt
移除開始在陣列中的指定索引處的一或多個項目。
void RemoveAt(
INT_PTR nIndex,
INT_PTR nCount = 1
);
參數
nIndex
大於或等於 0 且小於或等於 GetUpperBound所傳回值的整數索引。nCount
要移除的元素數目。
備註
在處理序中,它將在移除的後面的項目上的所有項目底下。 它會將陣列的上限,但無法釋放記憶體。
如果您要在移除點上嘗試移除多個元素陣列 (包含,則程式庫的偵錯版本的判斷提示。
RemoveAt 函式可從陣列移除 CObject 指標,不過,它不會刪除物件。
下表顯示類似 CObArray::RemoveAt的其他成員函式。
類別 |
成員函式 |
---|---|
void RemoveAt( INT_PTR nIndex, INT_PTR nCount = 1 ); |
|
void RemoveAt( INT_PTR nIndex, INT_PTR nCount = 1 ); |
|
void RemoveAt( INT_PTR nIndex, INT_PTR nCount = 1 ); |
|
void RemoveAt( INT_PTR nIndex, INT_PTR nCount = 1 ); |
|
void RemoveAt( INT_PTR nIndex, INT_PTR nCount = 1 ); |
|
void RemoveAt( INT_PTRnIndex, INT_PTR nCount = 1 ); |
範例
針對所有集合範例的 CAge 類別的目錄參閱 CObList::CObList 。
CObArray arr;
CObject* pa;
arr.Add(new CAge(21)); // Element 0
arr.Add(new CAge(40)); // Element 1
if((pa = arr.GetAt(0)) != NULL)
{
arr.RemoveAt(0); // Element 1 moves to 0.
delete pa; // Delete the original element at 0.
}
#ifdef _DEBUG
afxDump.SetDepth(1);
afxDump << _T("RemoveAt example: ") << &arr << _T("\n");
#endif
本程式的結果如下:
RemoveAt example: A CObArray with 1 elements
[0] = a CAge at $4606 40
需求
Header: afxcoll.h