CObArray::RemoveAt
Bir dizi belirtilen dizininde başlayan bir veya daha fazla öğelerini kaldırır.
void RemoveAt(
INT_PTR nIndex,
INT_PTR nCount = 1
);
Parametreler
nIndex
Sıfırdan büyük veya sıfıra eşit bir tamsayı dizinini ve tarafından döndürülen değere eşit veya daha az GetUpperBound.nCount
Kaldırılacak öğe sayısı.
Notlar
Bu süreçte, kaldırılan eleman yukarıdaki tüm öğeleri aşağı kaydırır.Bunu üst dizisi bağlı ancak belleği serbest bırakmadığında azaltır.
Dizide temizleme noktası yukarıda yer alan çok daha fazla öğe kaldırmaya çalışırsanız, hata ayıklama sürümü kitaplığını İleri sürüyor.
RemoveAt İşlev kaldırır CObject dizisi, ancak işaretçiyi nesnenin kendisini silmez.
Diğer üye benzer işlevleri aşağıdaki tabloda gösterilmektedir CObArray::RemoveAt.
Sınıf |
Üye işlevi |
---|---|
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 ); |
Örnek
Bkz: CObList::CObList bir listesi için CAge tüm koleksiyon örneklerde kullanılan sınıf.
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
Bu programdan sonuçlar aşağıdaki gibidir:
RemoveAt example: A CObArray with 1 elements
[0] = a CAge at $4606 40
Gereksinimler
Başlık: afxcoll.h