CObList::RemoveAt

nieważne RemoveAt ( stanowisko pozycji );

Parametry

stanowisko

Położenie elementu ma zostać usunięty z listy.

Uwagi

Usuwa określony element z listy.

Po usu&nięciu elementu z CObList, Usuń wskaźnik do obiektu z list.nbsp; Jest odpowiedzialny za usuwanie same obiekty.

Należy się upewnić, że wartość pozycji stanowi ważny pozycji na liście. Jeśli jest nieprawidłowy, następnie wersji debugowania biblioteki klas Microsoft Foundation twierdzi.

Przykład

Należy zachować ostrożność przy usuwaniu element podczas iteracji listy. Poniższy przykład ilustruje techniki usuwania, zapewniający prawidłową wartość pozycji dla GetNext.

   Lista cObList;
   POŁOŻENIE pos1, pos2;
   CObject * pa;
   
   Lista.AddHead (nowe CAge (21));
   Lista.AddHead (nowe CAge (40));
   Lista.AddHead (nowe CAge (65)); / / Lista zawiera teraz (65 40, 21).
   dla (pos1 = lista.GetHeadPosition(); (pos2 = pos1)! = NULL; )
   {
    nbsp;  Jeżeli (lista *(CAge*).GetNext (pos1) == CAge (40))
       {
           Pa = lista.GetAt (pos2); / / Save starych wskaźnika
                                  / / usuwania.
           Lista.RemoveAt (pos2);
           Usuń pa; / / Usuwania unika przeciek pamięci.
       }
   }
#ifdef _DEBUG
   afxDump.SetDepth (1);
   afxDump << "RemoveAt przykład:" << & listy << "" \n";
#ENDIF

Wyniki tego programu są następujące:

RemoveAt przykład: CObList z eleme&ntami 2
 nbsp;  Koszyk w $4C1E 65
    Koszyk w $4B22 21

Omówie&nie cObList |nbsp; Klasa członków | Wykres hierarchii

Index