CObList::GetHead
Ottiene il puntatore CObject che rappresenta l'elemento head dell'elenco.
CObject*& GetHead( );
const CObject*& GetHead( ) const;
Valore restituito
Se l'elenco viene eseguito tramite un puntatore a const CObList, quindi GetHead restituisce un puntatore a CObject.Questo consente alla funzione da utilizzare solo nella parte destra di un'istruzione di assegnazione e quindi proteggere l'elenco di modifica.
Se l'elenco viene eseguito direttamente o tramite un puntatore a CObList, quindi GetHead restituisce un riferimento a un puntatore CObject.Questo consente alla funzione da utilizzare per entrambi i lati di un'istruzione di assegnazione e pertanto consente le voci di elenco da modificare.
Note
È necessario verificare che l'elenco non è vuoto prima di chiamare GetHead.Se l'elenco è vuoto, la versione di debug delle asserzioni della libreria MFC.Utilizzare IsEmpty per verificare che l'elenco contenga elementi.
Nella tabella seguente vengono illustrate altre funzioni membro che sono simili a CObList::GetHead.
Classe |
Funzione membro |
---|---|
const di GetHead di void*& const( ); void*& GetHead( ); |
|
const di CString& GetHead const( ); CString& GetHead( ); |
Esempio
Vedere CObList::CObList per un elenco CAge.
Nell'esempio seguente viene illustrato l'utilizzo GetHead a sinistra di un'istruzione di assegnazione.
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.
Requisiti
Header: afxcoll.h