CObList::GetPrev
リストの要素を rPositionによって識別される取得してから、リスト内の前のエントリの POSITION の値に rPosition を設定します。
CObject*& GetPrev(
POSITION& rPosition
);
const CObject* GetPrev(
POSITION& rPosition
) const;
パラメーター
- rPosition
POSITION の値への参照は、前の GetPrev やそのほかのメンバー関数によって返される。
戻り値
GetHeadについては、戻り値の説明を参照してください。
解説
GetTailPosition か Findを呼び出して、最初の位置を確立すると逆のループ反復で GetPrev を使用できます。
POSITION の値は、リストの有効な位置を表すようにする必要があります。これは、Microsoft Foundation Class ライブラリの assert のデバッグ バージョン。
取得する要素がリストの 1 番目の場合、rPosition の新しい値は NULLに設定されます。
[!メモ]
MFC const CObject*&の代わりに const CObject* を返すために 8.0 でこのメソッドの const バージョンが変更されました。この変更は C++ 標準の一致にコンパイラが表示されるように行われた。
次の表は CObList::GetPrevに似ている他のメンバー関数を示します。
Class |
メンバー関数 |
---|---|
void*& GetPrev( POSITION& rPosition ); const void* GetPrev( POSITION& rPosition ) const; |
|
CString& GetPrev( POSITION& rPosition ); const CString& GetPrev( POSITION& rPosition ) const; |
使用例
CAge のクラスのリストについては、CObList::CObList を参照してください。
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