CObArray::RemoveAt
Odstraní jeden nebo více prvků od zadaného indexu v matici.
void RemoveAt(
INT_PTR nIndex,
INT_PTR nCount = 1
);
Parametry
nIndex
Integer index, který je větší nebo rovna 0 a menší než hodnoty vrácené GetUpperBound .nCount
Počet prvků, které chcete odebrat.
Poznámky
V procesu posune dolů nad prvků odebrány všechny prvky.To sníží horní vázané pole, ale není volné paměti.
Nepodmíněných pokusíte odebrat více prvků než jsou obsaženy v poli nad bodem odebrání pak ladicí verzi knihovny výrazů.
RemoveAt Odebere funkci CObject ukazatel z pole, ale neodstraní samotný objekt.
Následující tabulka obsahuje další členské funkce, které jsou podobné CObArray::RemoveAt .
Třída |
Členská funkce |
---|---|
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 ); |
Příklad
Viz CObList::CObList seznam CAge třídy použitá v příkladech všechny kolekce.
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
Výsledky z tohoto programu jsou následující:
RemoveAt example: A CObArray with 1 elements
[0] = a CAge at $4606 40
Požadavky
Záhlaví: afxcoll.h