Aracılığıyla paylaş


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

CByteArray

void RemoveAt( INT_PTR nIndex, INT_PTR nCount = 1 );

CDWordArray

void RemoveAt( INT_PTR nIndex, INT_PTR nCount = 1 );

CPtrArray

void RemoveAt( INT_PTR nIndex, INT_PTR nCount = 1 );

CStringArray

void RemoveAt( INT_PTR nIndex, INT_PTR nCount = 1 );

CUIntArray

void RemoveAt( INT_PTR nIndex, INT_PTR nCount = 1 );

CWordArray

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

Ayrıca bkz.

Başvuru

CObArray sınıfı

Hiyerarşi grafik

CObArray::SetAt

CObArray::SetAtGrow

CObArray::InsertAt