privatevoid RemoveAt ( posição posição );
Parâmetros
posição
A posição do elemento a ser removido da lista.
Observações
Remove o elemento especificado nesta lista.
Qua&ndo você remove um elemento de um CObList, remove o ponteiro de objeto do list.nbsp; É sua responsabilidade Excluir próprios objetos.
Você deve garantir que o valor de posição representa uma posição válida na lista. Se for inválido, em seguida, versão de Depurar do Microsoft Foundation Biblioteca de Classees asserts.
Exemplo
Tenha cuidado ao remover um elemento durante uma iteração de lista. O exemplo a seguir mostra uma técnica de remoção que garante um valor de posição válido para GetNext.
Lista de cObList;
POSIÇÃO pos1, pos2;
CObject * pa;
lista.AddHead (gaiola nova (21));
lista.AddHead (gaiola nova (40));
lista.AddHead (gaiola nova (65)); / / Lista agora contém (65 40, 21).
para (pos1 = lista.GetHeadPosition(); (pos2 = pos1)! = NULL; )
{
nbsp; se (*(CAge*) lista.GetNext (pos1) = = gaiola (40))
{
PA = lista.GetAt (pos2); / / Salvar o antigo ponteiro para
/ / exclusão.
lista.RemoveAt (pos2);
Excluir pa; / / Exclusão evita vazamento de memória.
}
}
# ifdef Debug
afxDump.SetDepth (1);
afxDump << "exemplo de RemoveAt:" << & lista << "\n";
# endif
Os resultados deste programa são os seguintes:
Exemplo de RemoveAt: um CObList com 2 eleme&ntos
nbsp; uma gaiola em $4C1E 65
uma gaiola em $4B22 21
Visão geral de cObList | Membros de classe | Gráfico de hierarquia