CObList::GetNext
Возвращает элемент списка указанный rPosition, а затем устанавливает rPosition к значению POSITION следующей записи в списке.
CObject*& GetNext(
POSITION& rPosition
);
const CObject* GetNext(
POSITION& rPosition
) const;
Параметры
- rPosition
Ссылка на значение POSITION вернула предыдущим GetNext, GetHeadPosition или другим вызовом функции-члена.
Возвращаемое значение
См. описание возвращаемого значения для GetHead.
Заметки
Можно использовать GetNext на переднем цикле итерации при установке на первоначальную позицию с вызовом GetHeadPosition или Find.
Необходимо убедиться, что значение POSITION представляет допустимую положение в списке.Если оно является недопустимым, отладочная версия библиотеки Microsoft Foundation Class assert.
Если полученный элемент является последним в списке, то новое значение rPosition установлено в NULL.
Можно удалить элемент во время итерации.См. пример для RemoveAt.
Примечание |
---|
Const с MFC 8,0 изменилась версия этого метода для возврата const CObject* вместо const CObject*&.Это изменение было сделано для получения компилятора в соответствие с стандартом C++. |
В следующей таблице приведены другие функции-члены, которые похожи на CObList::GetNext.
Класс |
Функция-член |
---|---|
void*& GetNext( POSITION& rPosition ); const void* GetNext( POSITION& rPosition ) const; |
|
CString& GetNext( POSITION& rPosition ); const CString& GetNext( POSITION& rPosition ) const; |
Пример
См. перечисление CObList::CObList для класса CAge.
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
Результаты из этой программы следующим образом:
a CAge at $479C 40
a CAge at $46C0 21
Требования
Header: afxcoll.h