Compartir a través de


CObList::RemoveAt

quita el elemento especificado de esta lista.

void RemoveAt( 
   POSITION position  
);

Parámetros

  • posición
    La posición del elemento que se va a quitar de la lista.

Comentarios

Cuando se quita un elemento de CObList, quita el puntero de objeto de la lista. Es responsabilidad eliminar los propios objetos.

Debe asegurarse de que el valor de POSICIÓN representa una posición válida en la lista. Si no es válido, la versión de depuración de la biblioteca Microsoft Foundation Class aserciones.

La tabla siguiente se muestran otras funciones miembro que son similares a CObList::RemoveAt.

Clase

Función miembro

CPtrList

posición);deRemoveAt vacío (POSICIÓN

CStringList

posición);deRemoveAt vacío (POSICIÓN

Ejemplo

Tenga cuidado al quitar un elemento durante una iteración de la lista. El ejemplo siguiente se muestra una técnica de eliminación que garantice un valor válido de POSICIÓN para GetNext.

Vea CObList:: CObList para una lista de la clase de CAge .

CObList list;
POSITION pos1, pos2;
CObject* pa;

list.AddHead(new CAge(21));
list.AddHead(new CAge(40));
list.AddHead(new CAge(65)); // List now contains (65 40, 21). 
for (pos1 = list.GetHeadPosition(); (pos2 = pos1) != NULL;)
{
    if (*(CAge*) list.GetNext(pos1) == CAge(40))
    {
        pa = list.GetAt(pos2); // Save the old pointer for 
                               //deletion.
        list.RemoveAt(pos2);
        delete pa; // Deletion avoids memory leak.
    }
}
#ifdef _DEBUG
   afxDump.SetDepth(1);
   afxDump << _T("RemoveAt example: ") << &list << _T("\n");
#endif      

Los resultados de este programa son los siguientes:

RemoveAt example: A CObList with 2 elements

a CAge at $4C1E 65

a CAge at $4B22 21

Requisitos

encabezado: afxcoll.h

Vea también

Referencia

CObList Class

Gráfico de jerarquías