Freigeben über


CAtlList::SwapElements

Rufen Sie diese Methode auf, um Elemente in der Liste auszulagern.

void SwapElements( 
   POSITION pos1, 
   POSITION pos2  
) throw( );

Parameter

  • pos1
    Der Wert der ersten Position.

  • pos2
    Der zweite Positionswert.

Hinweise

Vertauscht die Elemente in den beiden angegebenen Speicherorten aus. In Debugbuilds tritt auf, wenn ein Assertionsfehler jeder Positionswert gleich NULL ist.

Beispiel

// 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);   

Anforderungen

Header: atlcoll.h

Siehe auch

Referenz

CAtlList Class

CAtlList::MoveToHead

CAtlList::MoveToTail