CObList::GetNext
Získá prvek seznamu označeny rPosition , poté nastaví rPosition se POSITION hodnotu další položky v seznamu.
CObject*& GetNext(
POSITION& rPosition
);
const CObject* GetNext(
POSITION& rPosition
) const;
Parametry
- rPosition
Odkaz na POSITION hodnotu vrácenou předchozí GetNext , GetHeadPosition , nebo jiné volání funkce členů.
Vrácená hodnota
Viz vrácená hodnota popis GetHead.
Poznámky
Můžete použít GetNext ve smyčce dopředu iterace Pokud navázat počáteční pozici s voláním GetHeadPosition nebo Find .
Musí zajistit, aby vaše POSITION hodnota představuje platné pozici v seznamu.Nepodmíněných Pokud je neplatná, pak ladicí verzi knihovny Microsoft Foundation Class výrazů.
Pokud načtený prvek je poslední v seznamu potom novou hodnotu rPosition je nastavena na NULL .
Je možné odebrat prvek při iteraci.Příklad pro RemoveAt.
[!POZNÁMKA]
K MFC 8.0 const verze této metody změnil vrátit const CObject* namísto const CObject*& .Tato změna byla provedena k uvedení do souladu s C++ standard kompilátor.
Následující tabulka obsahuje další členské funkce, které jsou podobné CObList::GetNext .
Třída |
Členská funkce |
---|---|
void*& GetNext( POSITION& rPosition ); const void* GetNext( POSITION& rPosition ) const; |
|
CString& GetNext( POSITION& rPosition ); const CString& GetNext( POSITION& rPosition ) const; |
Příklad
Viz CObList::CObList seznam CAge třídy.
CObList list;
POSITION pos;
list.AddHead(new CAge(21));
list.AddHead(new CAge(40)); // List now contains (40, 21).
// Iterate through the list in head-to-tail order.
#ifdef _DEBUG
for (pos = list.GetHeadPosition(); pos != NULL;)
{
afxDump << list.GetNext(pos) << _T("\n");
}
#endif
Výsledky z tohoto programu jsou následující:
a CAge at $479C 40
a CAge at $46C0 21
Požadavky
Záhlaví: afxcoll.h