CAtlList::SwapElements
Chame esse método para trocar elementos na lista.
void SwapElements(
POSITION pos1,
POSITION pos2
) throw( );
Parâmetros
pos1
O primeiro valor POSITION.pos2
O segundo valor POSITION.
Comentários
Troca os elementos em duas posições especificadas.Em compilações de depurar, um erro de declaração ocorrerá se o valor da posição for igual a nulo.
Exemplo
// Define the integer list
CAtlList<int> myList;
// Populate the list
for (int i = 0; i < 100; i++)
{
myList.AddHead(i);
}
// Order is: 99, 98, 97, 96...
ATLASSERT(myList.GetHead() == 99);
ATLASSERT(myList.GetTail() == 0);
// Perform a crude bubble sort
for (int j = 0; j < 100; j++)
{
for(int i = 0; i < 99; i++)
{
if (myList.GetAt(myList.FindIndex(i)) >
myList.GetAt(myList.FindIndex(i+1)))
{
myList.SwapElements(myList.FindIndex(i), myList.FindIndex(i+1));
}
}
}
// Order is: 0, 1, 2, 3...
ATLASSERT(myList.GetHead() == 0);
ATLASSERT(myList.GetTail() == 99);
Requisitos
Cabeçalho: atlcoll.h