CObList::GetPrev
Возвращает элемент списка указанный rPosition, а затем устанавливает rPosition к значению POSITION предыдущей записи в списке.
CObject*& GetPrev(
POSITION& rPosition
);
const CObject* GetPrev(
POSITION& rPosition
) const;
Параметры
- rPosition
Ссылка на значение POSITION вернула предыдущим GetPrev или другим вызовом функции-члена.
Возвращаемое значение
См. описание возвращаемого значения для GetHead.
Заметки
Можно использовать GetPrev в обратном цикле итерации при установке на первоначальную позицию с вызовом GetTailPosition или Find.
Необходимо убедиться, что значение POSITION представляет допустимую положение в списке.Если оно является недопустимым, отладочная версия библиотеки Microsoft Foundation Class assert.
Если полученный элемент является первым в списке, то новое значение rPosition установлено в NULL.
![]() |
---|
Const с MFC 8,0 изменилась версия этого метода для возврата const CObject* вместо const CObject*&.Это изменение было сделано для получения компилятора в соответствие с стандартом C++. |
В следующей таблице приведены другие функции-члены, которые похожи на CObList::GetPrev.
Класс |
Функция-член |
---|---|
void*& GetPrev( POSITION& rPosition ); const void* GetPrev( POSITION& rPosition ) const; |
|
CString& GetPrev( POSITION& rPosition ); const CString& GetPrev( 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 tail-to-head order.
for (pos = list.GetTailPosition(); pos != NULL;)
{
#ifdef _DEBUG
afxDump << list.GetPrev(pos) << _T("\n");
#endif
}
Результаты из этой программы следующим образом:
a CAge at $421C 21
a CAge at $421C 40
Требования
Header: afxcoll.h