CObList::RemoveAt

void RemoveAt ( posizione posizione );

Parametri

posizione

La posizione dell'elemento per essere rimosso dalla lista.

Osservazioni

Rimuove l'elemento specificato da questo elenco.

Qua&ndo si rimuove un elemento da un CObList, rimuovere il puntatore all'oggetto dalla list.nbsp; Č vostra responsabilitā per eliminare gli oggetti stessi.

Č necessario assicurarsi che il valore di posizione rappresenta una valida posizione nell'elenco. Se č non valido, quindi la versione di Debug di Microsoft Foundation Class Library afferma.

Esempio

Prestare attenzione quando si rimuove un elemento durante un'iterazione dell'elenco. L'esempio seguente mostra una tecnica di rimozione che garantisce un valore valido di posizione per GetNext.

   Elenco dei cObList;
   POSIZIONE pos1, pos2;
   CObject * pa;
   
   elenco.AddHead (nuova gabbia (21));
   elenco.AddHead (nuova gabbia (40));
   elenco.AddHead (nuova gabbia (65)); / / Lista contiene ora (65 40, 21).
   per (pos1 = lista.GetHeadPosition(); (pos2 = pos1)! = NULL; )
   {
    nbsp;  Se (elenco *(CAge*).GetNext (pos1) = = CAge (40))
       {
           pa = lista.GetAt (pos2); / / Salva il vecchio puntatore per
                                  / / cancellazione.
           elenco.RemoveAt (pos2);
           eliminare pa; / / Cancellazione evita la perdita di memoria.
       }
   }
ifdef  debug
   afxDump.SetDepth (1);
   afxDump << "RemoveAt esempio:" << & lista << "\n";
# endif

I risultati di questo programma sono i seguenti:

RemoveAt esempio: u&n CObList con 2 elementi
 nbsp;  una gabbia di 4C1E $ 65
    una gabbia di $4B22 21

Pa&noramica cObList |nbsp; Membri della classe | Gerarchia Chart

Index