CList::GetPrev
リストの要素を rPositionによって識別される取得してから、リスト内の前のエントリの POSITION の値に rPosition を設定します。
TYPE& GetPrev(
POSITION& rPosition
);
const TYPE& GetPrev(
POSITION& rPosition
) const;
パラメーター
type
リスト内の要素の型を指定するテンプレート パラメーター。rPosition
POSITION の値への参照は、前の GetPrev やそのほかのメンバー関数によって返される。
戻り値
リストが const場合、GetPrev はリストの先頭から要素のコピーを返します。これは、関数が代入ステートメントの右側でのみ使用されるようにし、変更のリストを保護します。
リストが constである、GetPrev は、リストの要素への参照を返します。これは、関数が代入ステートメントのどちらにも使用されるようにするため、リスト エントリが変更されるようにします。
解説
GetTailPosition か **[検索]**を呼び出して、最初の位置を確立すると逆のループ反復で GetPrev を使用できます。
POSITION の値は、リストの有効な位置を表すようにする必要があります。これは、Microsoft Foundation Class ライブラリの assert のデバッグ バージョン。
取得する要素がリストの 1 番目の場合、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));
}
必要条件
ヘッダー: afxtempl.h