次の方法で共有


CObList::GetHead

このリストの先頭要素を表す CObject のポインターを取得します。

CObject*& GetHead( );
const CObject*& GetHead( ) const;

戻り値

リストが const CObListへのポインターを介してアクセスされます GetHeadCObject のポインターを返します。これは、関数が代入ステートメントの右側でのみ使用されるようにするため、変更のリストを保護します。

リストが CObListへのポインターを通じてまたは直接アクセスして、GetHeadCObject のポインターへの参照を返します。これは、関数が代入ステートメントのどちらにも使用されるようにするため、リスト エントリが変更されるようにします。

解説

リストが GetHeadを呼び出す前に、空でないことを確認する必要があります。リストが空の場合は、Microsoft Foundation Class ライブラリの assert のデバッグ バージョン。リストに要素が含まれていることを確認するには IsEmpty を使用します。

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

Class

メンバー関数

CPtrList

const void*& GetHead( ) const; void*& GetHead( );

CStringList

const CString& GetHead( ) const; CString& GetHead( );

使用例

CAge のクラスのリストについては、CObList::CObList を参照してください。

次の例は、代入ステートメントの左側に GetHead の使用例です。

const CObList* cplist;

CObList* plist = new CObList;
CAge* page1 = new CAge(21);
CAge* page2 = new CAge(30);
CAge* page3 = new CAge(40);
plist->AddHead(page1);
plist->AddHead(page2);  // List now contains (30, 21).
// The following statement REPLACES the head element.
plist->GetHead() = page3; // List now contains (40, 21).
ASSERT(*(CAge*) plist->GetHead() == CAge(40));
cplist = plist;  // cplist is a pointer to a const list.
// cplist->GetHead() = page3; // Error: can't assign a pointer to a const list
ASSERT(*(CAge*) plist->GetHead() == CAge(40)); // OK

delete page1;
delete page2;
delete page3;
delete plist; // Cleans up memory.      

必要条件

Header: afxcoll.h

参照

関連項目

CObList クラス

階層図

CObList::GetTail

CObList::GetTailPosition

CObList::AddHead

CObList::RemoveHead