Поделиться через


CList::GetPrev

Возвращает элемент списка указанный rPosition, а затем устанавливает rPosition к значению POSITION предыдущей записи в списке.

TYPE& GetPrev(
   POSITION& rPosition 
);
const TYPE& GetPrev( 
   POSITION& rPosition  
) const;

Параметры

  • ТИП
    Параметр шаблона, указывающие тип элементов в списке.

  • rPosition
    Ссылка на значение POSITION вернула предыдущим GetPrev или другим вызовом функции-члена.

Возвращаемое значение

Если список const, то GetPrev возвращает копию элемента в начало списка.Это позволяет функции, которую необходимо использовать только в правой части оператора присваивания и защищает список из изменений.

Если список не является const, то GetPrev возвращает ссылку на элемент списка.Это позволяет функции, которую необходимо использовать с обеих сторон оператора назначения и таким образом позволяющее записи списка, который требуется изменить.

Заметки

Можно использовать GetPrev в обратном цикле итерации при установке на первоначальную позицию с вызовом GetTailPosition или Найти.

Необходимо убедиться, что значение POSITION представляет допустимую положение в списке.Если оно является недопустимым, отладочная версия библиотеки Microsoft Foundation Class assert.

Если полученный элемент является первым в списке, то новое значение rPosition установлено в NULL.

Пример

// Define myList.
CList<CString,CString&> myList;

// Add two elements to the list.
myList.AddHead(CString(_T("ABC")));
myList.AddHead(CString(_T("123")));

// Dump the list elements to the debug window,
// in reverse order.
POSITION pos = myList.GetTailPosition();
for (int i = 0; i < myList.GetCount(); i++)
{
   TRACE(_T("%s\r\n"), (LPCTSTR)myList.GetPrev(pos));
}

Требования

Header: afxtempl.h

См. также

Ссылки

Класс CList

Диаграмма иерархии

CList::Find

CList::GetTailPosition

CList::GetHeadPosition

CList::GetNext

CList::GetHead