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