次の方法で共有


CObList::GetNext

リストの要素を rPositionによって識別される取得してから、リストに次のエントリが POSITION の値に rPosition を設定します。

CObject*& GetNext(
   POSITION& rPosition 
);
const CObject* GetNext( 
   POSITION& rPosition  
) const;

パラメーター

  • rPosition
    POSITION の値への参照は、前の GetNextGetHeadPosition、またはそのほかのメンバー関数の呼び出しによって返される。

戻り値

GetHeadについては、戻り値の説明を参照してください。

解説

GetHeadPosition か Findを呼び出して、最初の位置を確立すると順方向の反復ループで GetNext を使用できます。

POSITION の値は、リストの有効な位置を表すようにする必要があります。これは、Microsoft Foundation Class ライブラリの assert のデバッグ バージョン。

取得する要素がリストの最後の場合、rPosition の新しい値は NULLに設定されます。

イテレーション中に要素を削除できます。RemoveAtの例を参照してください。

[!メモ]

MFC const CObject*&の代わりに const CObject* を返すために 8.0 でこのメソッドの const バージョンが変更されました。この変更は C++ 標準の一致にコンパイラが表示されるように行われた。

次の表は CObList::GetNextに似ている他のメンバー関数を示します。

Class

メンバー関数

CPtrList

void*& GetNext( POSITION& rPosition );

const void* GetNext( POSITION& rPosition ) const;

CStringList

CString& GetNext( POSITION& rPosition );

const CString& GetNext( 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 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

参照

関連項目

CObList クラス

階層図

CObList::Find

CObList::GetHeadPosition

CObList::GetTailPosition

CObList::GetPrev

CObList::GetHead