CObList::RemoveAt

privatevoid RemoveAt ( POSITION Stellung );

Parameter

lage

Die Position des Elements aus der Liste entfernt werden.

Bemerkungen

Entfernt das angegebene Element aus dieser Liste.

We&nn Sie ein Element aus einem CObListentfernen, entfernen Sie den Objektzeiger aus der list.nbsp; Es liegt in Ihrer Verantwortung, die Objekte selbst zu löschen.

Sie müssen sicherstellen, dass Ihre POSITION -Wert eine gültige Position in der Liste darstellt. Wenn es ungültig ist, behauptet dann die Debug-Version von der Microsoft Foundation Class-Bibliothek.

Beispiel

Seien Sie vorsichtig beim Entfernen eines Elements in einer Liste Iteration. Das folgende Beispiel zeigt eine Entfernung-Technik, die einen gültigen POSITION Wert für GetNext garantiert.

   Liste von cObList;
   Stellung pos1, pos2;
   CObject * Pa;
   
   Liste.AddHead (neue Käfig (21));
   Liste.AddHead (neue Käfig (40));
   Liste.AddHead (neue Käfig (65)); / / Liste enthält (65 40, 21).
   für (pos1 = Liste.GetHeadPosition(); (pos2 = pos1)! = NULL; )
   {
    Nbsp;  Wenn (*(CAge*) Liste.GetNext (pos1) == CAge (40))
       {
           PA = Liste.GetAt (pos2); / / Speichern den alten Zeiger für
                                  / / Löschen.
           Liste.RemoveAt (pos2);
           Löschen Sie Pa; / / Löschen vermeidet Speicherverlust.
       }
   }
# ifdef _DEBUG
   afxDump.SetDepth (1);
   AfxDump << "RemoveAt-Beispiel:" << & Liste << "\n";
# endif

Die Ergebnisse aus diesem Programm sind wie folgt:

RemoveAt-Beispiel: eine CObList mit 2 Elementen
 &Nbsp;  einem Käfig auf $4C1E 65
    einem Käfig auf $4B22 21

CObList ÜbersichtMember der Klasse | Hierarchiediagramm

Index