Classe CList
Supporta elenchi ordinati di oggetti non univoci accessibili in sequenza o in base al valore.
Sintassi
template<class TYPE, class ARG_TYPE = const TYPE&>
class CList : public CObject
Membri
Costruttori pubblici
Nome | Descrizione |
---|---|
CList::CList |
Costruisce un elenco ordinato vuoto. |
Metodi pubblici
Nome | Descrizione |
---|---|
CList::AddHead |
Aggiunge un elemento (o tutti gli elementi di un altro elenco) all'inizio dell'elenco (crea una nuova testa). |
CList::AddTail |
Aggiunge un elemento (o tutti gli elementi di un altro elenco) alla parte finale dell'elenco (crea una nuova coda). |
CList::Find |
Ottiene la posizione di un elemento specificato dal valore del puntatore. |
CList::FindIndex |
Ottiene la posizione di un elemento specificato da un indice in base zero. |
CList::GetAt |
Ottiene l'elemento in corrispondenza di una determinata posizione. |
CList::GetCount |
Restituisce il numero di elementi nell'elenco. |
CList::GetHead |
Restituisce l'elemento head dell'elenco (non può essere vuoto). |
CList::GetHeadPosition |
Restituisce la posizione dell'elemento head dell'elenco. |
CList::GetNext |
Ottiene l'elemento successivo per l'iterazione. |
CList::GetPrev |
Ottiene l'elemento precedente per l'iterazione. |
CList::GetSize |
Restituisce il numero di elementi nell'elenco. |
CList::GetTail |
Restituisce l'elemento finale dell'elenco (non può essere vuoto). |
CList::GetTailPosition |
Restituisce la posizione dell'elemento finale dell'elenco. |
CList::InsertAfter |
Inserisce un nuovo elemento dopo una determinata posizione. |
CList::InsertBefore |
Inserisce un nuovo elemento prima di una determinata posizione. |
CList::IsEmpty |
Verifica la condizione di elenco vuota (nessun elemento). |
CList::RemoveAll |
Rimuove tutti gli elementi dall'elenco. |
CList::RemoveAt |
Rimuove un elemento da questo elenco, specificato dalla posizione. |
CList::RemoveHead |
Rimuove l'elemento dall'inizio dell'elenco. |
CList::RemoveTail |
Rimuove l'elemento dalla parte finale dell'elenco. |
CList::SetAt |
Imposta l'elemento in una determinata posizione. |
Parametri
TYPE
Tipo di oggetto archiviato nell'elenco.
ARG_TYPE
Tipo utilizzato per fare riferimento agli oggetti archiviati nell'elenco. Può essere un riferimento.
Osservazioni:
CList
gli elenchi si comportano come elenchi collegati doubly.
Una variabile di tipo POSITION
è una chiave per l'elenco. È possibile usare una POSITION
variabile come iteratore per attraversare un elenco in sequenza e come segnalibro per contenere una posizione. Una posizione non è tuttavia uguale a un indice.
L'inserimento degli elementi è molto veloce all'inizio dell'elenco, alla coda e a un oggetto noto POSITION
. Una ricerca sequenziale è necessaria per cercare un elemento in base al valore o all'indice. Questa ricerca può essere lenta se l'elenco è lungo.
Se è necessario un dump di singoli elementi nell'elenco, è necessario impostare la profondità del contesto di dump su 1 o versione successiva.
Alcune funzioni membro di questa classe chiamano funzioni helper globali che devono essere personalizzate per la maggior parte degli usi della CList
classe . Vedere Collection Class Helpers (Helper classi di raccolta) nella sezione "Macro e globals".
Per altre informazioni sull'uso CList
di , vedere l'articolo Raccolte.
Esempio
// CList is a template class that takes two template arguments.
// The first argument is type stored internally by the list, the
// second argument is the type used in the arguments for the
// CList methods.
// This code defines a list of ints.
CList<int, int> myIntList;
// This code defines a list of CStrings
CList<CString, CString &> myStringList;
// This code defines a list of MYTYPEs,
// NOTE: MYTYPE could be any struct, class or type definition
CList<MYTYPE, MYTYPE &> myTypeList;
Gerarchia di ereditarietà
CList
Requisiti
Intestazione: afxtempl.h
CList::AddHead
Aggiunge un nuovo elemento o un elenco di elementi all'inizio di questo elenco.
POSITION AddHead(ARG_TYPE newElement);
void AddHead(CList* pNewList);
Parametri
ARG_TYPE
Parametro del modello che specifica il tipo di elemento dell'elenco (può essere un riferimento).
newElement
Nuovo elemento.
pNewList
Puntatore a un altro CList
elenco. Gli elementi in pNewList
verranno aggiunti a questo elenco.
Valore restituito
La prima versione restituisce il POSITION
valore dell'elemento appena inserito.
Osservazioni:
L'elenco può essere vuoto prima dell'operazione.
Esempio
// Declarations of the variables used in the example
CList<CString, CString &> myList;
CList<CString, CString &> myList2;
// There are two versions of CList::AddHead: one adds a single
// element to the front of the list, the second adds another list
// to the front.
// This adds the string "ABC" to the front of myList.
// myList is a list of CStrings (ie defined as CList<CString,CString&>).
myList.AddHead(CString(_T("ABC")));
// This adds the elements of myList2 to the front of myList.
myList.AddHead(&myList2);
CList::AddTail
Aggiunge un nuovo elemento o un elenco di elementi alla fine dell'elenco.
POSITION AddTail(ARG_TYPE newElement);
void AddTail(CList* pNewList);
Parametri
ARG_TYPE
Parametro del modello che specifica il tipo di elemento dell'elenco (può essere un riferimento).
newElement
Elemento da aggiungere all'elenco.
pNewList
Puntatore a un altro CList
elenco. Gli elementi in pNewList
verranno aggiunti a questo elenco.
Valore restituito
La prima versione restituisce il POSITION
valore dell'elemento appena inserito.
Osservazioni:
L'elenco può essere vuoto prima dell'operazione.
Esempio
// Define myList and myList2.
CList<CString, CString &> myList;
CList<CString, CString &> myList2;
// Add elements to the end of myList and myList2.
myList.AddTail(CString(_T("A")));
myList.AddTail(CString(_T("B")));
myList2.AddTail(CString(_T("C")));
myList2.AddTail(CString(_T("D")));
// There are two versions of CList::AddTail: one adds a single
// element to the end of the list, the second adds another list
// to the end.
// This adds the string "ABC" to the end of myList.
// myList is a list of CStrings (ie defined as CList<CString,CString&>).
myList.AddTail(CString(_T("ABC")));
ASSERT(CString(_T("ABC")) == myList.GetTail());
// This adds the elements of myList2 to the end of myList.
myList.AddTail(&myList2);
CList::CList
Costruisce un elenco ordinato vuoto.
CList(INT_PTR nBlockSize = 10);
Parametri
nBlockSize
Granularità dell'allocazione di memoria per estendere l'elenco.
Osservazioni:
Man mano che l'elenco aumenta, la memoria viene allocata in unità di nBlockSize
voci.
Esempio
// This code defines myList as a list of strings
// such that memory gets allocated in chunks of
// 16 strings.
CList<CString, CString &> myList(16);
// This code defines myList2 as a list of ints
// such that memory gets allocated in chunks of
// 128 ints.
CList<int, int> myList2(128);
CList::Find
Cerca nell'elenco in sequenza per trovare il primo elemento corrispondente all'oggetto specificato searchValue
.
POSITION Find(
ARG_TYPE searchValue,
POSITION startAfter = NULL) const;
Parametri
ARG_TYPE
Parametro del modello che specifica il tipo di elemento dell'elenco (può essere un riferimento).
searchValue
Valore da trovare nell'elenco.
startAfter
Posizione iniziale per la ricerca. Se non viene specificato alcun valore, la ricerca inizia con l'elemento head.
Valore restituito
Valore POSITION
che può essere utilizzato per il recupero dell'iterazione o del puntatore a oggetti; NULL
se l'oggetto non viene trovato.
Esempio
// Define myList.
CList<CString, CString &> myList;
// Add three elements to the list.
myList.AddHead(CString(_T("XYZ")));
myList.AddHead(CString(_T("ABC")));
myList.AddHead(CString(_T("123")));
// Find a specific element.
POSITION pos = myList.Find(CString(_T("XYZ")));
ASSERT(CString(_T("XYZ")) == myList.GetAt(pos));
CList::FindIndex
Usa il valore di nIndex
come indice nell'elenco.
POSITION FindIndex(INT_PTR nIndex) const;
Parametri
nIndex
Indice in base zero dell'elemento elenco da trovare.
Valore restituito
Valore POSITION
che può essere utilizzato per il recupero dell'iterazione o del puntatore a oggetti; NULL
se nIndex
è negativo o troppo grande.
Osservazioni:
Avvia un'analisi sequenziale dall'inizio dell'elenco, fermandosi sull'n elemento.
Esempio
// Define myList.
CList<CString, CString &> myList;
// Add three elements to the list.
myList.AddTail(CString(_T("XYZ")));
myList.AddTail(CString(_T("ABC")));
myList.AddTail(CString(_T("123")));
// Verify the first element (index 0).
ASSERT(CString(_T("XYZ")) == myList.GetAt(myList.FindIndex(0)));
// Verify the third element (index 2).
ASSERT(CString(_T("123")) == myList.GetAt(myList.FindIndex(2)));
CList::GetAt
Ottiene l'elemento list in una determinata posizione.
TYPE& GetAt(POSITION position);
const TYPE& GetAt(POSITION position) const;
Parametri
TYPE
Parametro modello che specifica il tipo di oggetto nell'elenco.
position
Posizione nell'elenco dell'elemento da ottenere.
Valore restituito
Vedere la descrizione del valore restituito per GetHead
.
Osservazioni:
GetAt
restituisce l'elemento (o un riferimento all'elemento) associato a una determinata posizione. Non è uguale a un indice e non è possibile operare manualmente su un POSITION
valore. Una variabile di tipo POSITION
è una chiave per l'elenco.
È necessario assicurarsi che il POSITION
valore rappresenti una posizione valida nell'elenco. Se non è valido, la versione debug della libreria di classi Microsoft Foundation asserisce.
Esempio
Vedere l'esempio per CList::GetHeadPosition
.
CList::GetCount
Ottiene il numero di elementi nell'elenco.
INT_PTR GetCount() const;
Valore restituito
Valore intero contenente il conteggio degli elementi.
Osservazioni:
La chiamata a questo metodo genererà lo stesso risultato del CList::GetSize
metodo .
Esempio
Vedere l'esempio per CList::RemoveHead
.
CList::GetHead
Ottiene l'elemento head (o un riferimento all'elemento head) di questo elenco.
const TYPE& GetHead() const;
TYPE& GetHead();
Parametri
TYPE
Parametro modello che specifica il tipo di oggetto nell'elenco.
Valore restituito
Se l'elenco è const
, GetHead
restituisce una copia dell'elemento all'inizio dell'elenco. In questo modo la funzione può essere usata solo sul lato destro di un'istruzione di assegnazione e protegge l'elenco dalla modifica.
Se l'elenco non const
è , GetHead
restituisce un riferimento all'elemento all'inizio dell'elenco. Ciò consente di usare la funzione su entrambi i lati di un'istruzione di assegnazione e di conseguenza consente di modificare le voci di elenco.
Osservazioni:
È necessario assicurarsi che l'elenco non sia vuoto prima di chiamare GetHead
. Se l'elenco è vuoto, la versione debug della libreria di classi Microsoft Foundation asserisce. Utilizzare IsEmpty
per verificare che l'elenco contenga elementi.
Esempio
// Define myList.
CList<CString, CString &> myList;
// Add an element to the front of the list.
myList.AddHead(CString(_T("ABC")));
// Verify the element was added to the front of the list.
ASSERT(CString(_T("ABC")) == myList.GetHead());
CList::GetHeadPosition
Ottiene la posizione dell'elemento head dell'elenco.
POSITION GetHeadPosition() const;
Valore restituito
Valore POSITION
che può essere utilizzato per il recupero dell'iterazione o del puntatore a oggetti; NULL
se l'elenco è vuoto.
Esempio
// Define myList.
CList<CString, CString &> myList;
// Add an element to the front of the list.
myList.AddHead(CString(_T("ABC")));
// Verify the element at the head position
// is the one added.
POSITION pos = myList.GetHeadPosition();
ASSERT(CString(_T("ABC")) == myList.GetAt(pos));
CList::GetNext
Ottiene l'elemento elenco identificato da rPosition
, quindi imposta rPosition
sul POSITION
valore della voce successiva nell'elenco.
TYPE& GetNext(POSITION& rPosition);
const TYPE& GetNext(POSITION& rPosition) const;
Parametri
TYPE
Parametro del modello che specifica il tipo degli elementi nell'elenco.
rPosition
Riferimento a un POSITION
valore restituito da una precedente GetNext
chiamata di funzione membro , GetHeadPosition
o .
Valore restituito
Se l'elenco è const
, GetNext
restituisce una copia di un elemento dell'elenco. In questo modo la funzione può essere usata solo sul lato destro di un'istruzione di assegnazione e protegge l'elenco dalla modifica.
Se l'elenco non const
è , GetNext
restituisce un riferimento a un elemento dell'elenco. Ciò consente di usare la funzione su entrambi i lati di un'istruzione di assegnazione e di conseguenza consente di modificare le voci di elenco.
Osservazioni:
È possibile usare GetNext
in un ciclo di iterazione in avanti se si stabilisce la posizione iniziale con una chiamata a GetHeadPosition
o Find
.
È necessario assicurarsi che il POSITION
valore rappresenti una posizione valida nell'elenco. Se non è valido, la versione debug della libreria di classi Microsoft Foundation asserisce.
Se l'elemento recuperato è l'ultimo nell'elenco, il nuovo valore di rPosition
viene impostato su NULL.
Esempio
// Define myList.
// 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.
POSITION pos = myList.GetHeadPosition();
for (int i = 0; i < myList.GetCount(); i++)
{
TRACE(_T("%s\r\n"), (LPCTSTR)myList.GetNext(pos));
}
CList::GetPrev
Ottiene l'elemento elenco identificato da rPosition
, quindi imposta rPosition
sul POSITION
valore della voce precedente nell'elenco.
TYPE& GetPrev(POSITION& rPosition);
const TYPE& GetPrev(POSITION& rPosition) const;
Parametri
TYPE
Parametro del modello che specifica il tipo degli elementi nell'elenco.
rPosition
Riferimento a un POSITION
valore restituito da una chiamata di funzione precedente GetPrev
o di altro membro.
Valore restituito
Se l'elenco è const
, GetPrev
restituisce una copia dell'elemento all'inizio dell'elenco. In questo modo la funzione può essere usata solo sul lato destro di un'istruzione di assegnazione e protegge l'elenco dalla modifica.
Se l'elenco non const
è , GetPrev
restituisce un riferimento a un elemento dell'elenco. Ciò consente di usare la funzione su entrambi i lati di un'istruzione di assegnazione e di conseguenza consente di modificare le voci di elenco.
Osservazioni:
È possibile usare GetPrev
in un ciclo di iterazione inversa se si stabilisce la posizione iniziale con una chiamata a GetTailPosition
o Find
.
È necessario assicurarsi che il POSITION
valore rappresenti una posizione valida nell'elenco. Se non è valido, la versione debug della libreria di classi Microsoft Foundation asserisce.
Se l'elemento recuperato è il primo nell'elenco, il nuovo valore di rPosition
viene impostato su NULL
.
Esempio
// 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));
}
CList::GetSize
Restituisce il numero di elementi elenco.
INT_PTR GetSize() const;
Valore restituito
Numero di elementi nell'elenco.
Osservazioni:
Chiamare questo metodo per recuperare il numero di elementi nell'elenco. La chiamata a questo metodo genererà lo stesso risultato del CList::GetCount
metodo .
Esempio
// Define myList.
CList<CString, CString &> myList;
// Add two elements to the list.
myList.AddHead(CString(_T("ABC")));
myList.AddHead(CString(_T("123")));
// Remove the head element and verify the list.
// NOTE: once the head is removed, the number of
// elements in the list will be one.
CString strHead = myList.RemoveHead();
ASSERT((CString(_T("123")) == strHead) && (myList.GetSize() == 1) &&
(CString(_T("ABC")) == myList.GetHead()));
CList::GetTail
Ottiene il CObject
puntatore che rappresenta l'elemento finale dell'elenco.
TYPE& GetTail();
const TYPE& GetTail() const;
Parametri
TYPE
Parametro modello che specifica il tipo di elementi nell'elenco.
Valore restituito
Vedere la descrizione del valore restituito per GetHead
.
Osservazioni:
È necessario assicurarsi che l'elenco non sia vuoto prima di chiamare GetTail
. Se l'elenco è vuoto, la versione debug della libreria di classi Microsoft Foundation asserisce. Utilizzare IsEmpty
per verificare che l'elenco contenga elementi.
Esempio
// Define myList.
CList<CString, CString &> myList;
// Add an element to the end of the list.
myList.AddTail(CString(_T("ABC")));
// Verify the element was added to the end of the list.
ASSERT(CString(_T("ABC")) == myList.GetTail());
CList::GetTailPosition
Ottiene la posizione dell'elemento finale dell'elenco; NULL
se l'elenco è vuoto.
POSITION GetTailPosition() const;
Valore restituito
Valore POSITION
che può essere utilizzato per il recupero dell'iterazione o del puntatore a oggetti; NULL
se l'elenco è vuoto.
Esempio
// Define myList.
CList<CString,CString&> myList;
// Add an element to the end of the list.
myList.AddTail(CString(_T("ABC")));
// Verify the element at the end position
// is the one added.
POSITION pos = myList.GetTailPosition();
ASSERT(CString(_T("ABC")) == myList.GetAt(pos));
CList::InsertAfter
Aggiunge un elemento a questo elenco dopo l'elemento nella posizione specificata.
POSITION InsertAfter(POSITION position, ARG_TYPE newElement);
Parametri
position
Valore POSITION restituito da una GetNext
precedente chiamata di funzione membro , GetPrev
o Find
.
ARG_TYPE
Parametro modello che specifica il tipo dell'elemento elenco.
newElement
Elemento da aggiungere all'elenco.
Valore restituito
Valore POSITION
che può essere utilizzato per l'iterazione o il recupero dell'elemento elenco.
Esempio
// Define myList.
CList<CString, CString &> myList;
// Add three elements to the list.
POSITION pos = myList.AddHead(CString(_T("XYZ")));
pos = myList.InsertAfter(pos, CString(_T("ABC")));
pos = myList.InsertAfter(pos, CString(_T("123")));
// Verify the tail element is what's expected.
ASSERT(CString(_T("123")) == myList.GetTail());
CList::InsertBefore
Aggiunge un elemento all'elenco prima dell'elemento nella posizione specificata.
POSITION InsertBefore(POSITION position, ARG_TYPE newElement);
Parametri
position
Valore POSITION
restituito da una chiamata di funzione membro , GetPrev
o Find
precedenteGetNext
.
ARG_TYPE
Parametro del modello che specifica il tipo di elemento dell'elenco (può essere un riferimento).
newElement
Elemento da aggiungere all'elenco.
Valore restituito
Valore POSITION
che può essere utilizzato per l'iterazione o il recupero dell'elemento elenco.
Osservazioni:
Se position
è NULL
, l'elemento viene inserito all'inizio dell'elenco.
Esempio
// Define myList.
CList<CString, CString &> myList;
// Add three elements to the list.
POSITION pos = myList.AddHead(CString(_T("XYZ")));
pos = myList.InsertBefore(pos, CString(_T("ABC")));
pos = myList.InsertBefore(pos, CString(_T("123")));
// Verify the head element is what's expected.
ASSERT(CString(_T("123")) == myList.GetHead());
CList::IsEmpty
Indica se l'elenco non contiene elementi.
BOOL IsEmpty() const;
Valore restituito
Diverso da zero se l'elenco è vuoto; in caso contrario, 0.
Esempio
// Define myList.
CList<CString, CString &> myList;
// Add three elements to the list.
myList.AddTail(CString(_T("XYZ")));
myList.AddTail(CString(_T("ABC")));
myList.AddTail(CString(_T("123")));
// Remove the head element until the list is empty.
CString str;
while (!myList.IsEmpty())
{
str = myList.RemoveHead();
TRACE(_T("%s\r\n"), (LPCTSTR)str);
}
CList::RemoveAll
Rimuove tutti gli elementi da questo elenco e libera la memoria associata.
void RemoveAll();
Osservazioni:
Se l'elenco è già vuoto, non viene generato alcun errore.
Esempio
// Define myList.
CList<CString, CString&> myList;
// Add three elements to the list.
myList.AddTail(CString(_T("XYZ")));
myList.AddTail(CString(_T("ABC")));
myList.AddTail(CString(_T("123")));
// Remove all of the elements in the list.
myList.RemoveAll();
// Verify the list is empty.
ASSERT(myList.IsEmpty());
CList::RemoveAt
Rimuove l'elemento specificato da questo elenco.
void RemoveAt(POSITION position);
Parametri
position
Posizione dell'elemento da rimuovere dall'elenco.
Osservazioni:
È necessario assicurarsi che il POSITION
valore rappresenti una posizione valida nell'elenco. Se non è valido, la versione debug della libreria di classi Microsoft Foundation asserisce.
Esempio
// Define myList.
CList<CString, CString&> myList;
// Add three elements to the list.
myList.AddTail(CString(_T("XYZ")));
myList.AddTail(CString(_T("ABC")));
myList.AddTail(CString(_T("123")));
// Remove CString("ABC") from the list.
myList.RemoveAt(myList.FindIndex(1));
// Verify CString("ABC") is not in the list.
ASSERT(myList.Find(CString(_T("ABC"))) == NULL);
CList::RemoveHead
Rimuove l'elemento dall'intestazione dell'elenco e ne restituisce un puntatore.
TYPE RemoveHead();
Parametri
TYPE
Parametro modello che specifica il tipo di elementi nell'elenco.
Valore restituito
Elemento precedentemente all'inizio dell'elenco.
Osservazioni:
È necessario assicurarsi che l'elenco non sia vuoto prima di chiamare RemoveHead
. Se l'elenco è vuoto, la versione debug della libreria di classi Microsoft Foundation asserisce. Utilizzare IsEmpty
per verificare che l'elenco contenga elementi.
Esempio
// Define myList.
CList<CString, CString&> myList;
// Add two elements to the list.
myList.AddHead(CString(_T("ABC")));
myList.AddHead(CString(_T("123")));
// Remove the head element and verify the list.
// NOTE: once the head is removed, the number of
// elements in the list will be one.
CString strHead = myList.RemoveHead();
ASSERT((CString(_T("123")) == strHead) && (myList.GetCount() == 1) &&
(CString(_T("ABC")) == myList.GetHead()));
CList::RemoveTail
Rimuove l'elemento dalla parte finale dell'elenco e ne restituisce un puntatore.
TYPE RemoveTail();
Parametri
TYPE
Parametro modello che specifica il tipo di elementi nell'elenco.
Valore restituito
Elemento alla fine dell'elenco.
Osservazioni:
È necessario assicurarsi che l'elenco non sia vuoto prima di chiamare RemoveTail
. Se l'elenco è vuoto, la versione debug della libreria di classi Microsoft Foundation asserisce. Utilizzare IsEmpty
per verificare che l'elenco contenga elementi.
Esempio
// Define myList.
CList<CString, CString &> myList;
// Add two elements to the list.
myList.AddTail(CString(_T("ABC")));
myList.AddTail(CString(_T("123")));
// Remove the tail element and verify the list.
// NOTE: once the tail is removed, the number of
// elements in the list will be one.
CString strTail = myList.RemoveTail();
ASSERT((CString(_T("123")) == strTail) && (myList.GetCount() == 1) &&
(CString(_T("ABC")) == myList.GetTail()));
CList::SetAt
Una variabile di tipo POSITION
è una chiave per l'elenco.
void SetAt(POSITION pos, ARG_TYPE newElement);
Parametri
pos
Oggetto POSITION
dell'elemento da impostare.
ARG_TYPE
Parametro del modello che specifica il tipo di elemento dell'elenco (può essere un riferimento).
newElement
Elemento da aggiungere all'elenco.
Osservazioni:
Non è uguale a un indice e non è possibile operare manualmente su un POSITION
valore. SetAt
scrive l'elemento nella posizione specificata nell'elenco.
È necessario assicurarsi che il POSITION
valore rappresenti una posizione valida nell'elenco. Se non è valido, la versione debug della libreria di classi Microsoft Foundation asserisce.
Esempio
// Define myList.
CList<CString, CString &> myList;
// Add three elements to the list.
myList.AddTail(CString(_T("XYZ")));
myList.AddTail(CString(_T("ABC")));
myList.AddTail(CString(_T("123")));
// Replace CString("ABC") with CString("CBA")
POSITION pos = myList.Find(CString(_T("ABC")));
myList.SetAt(pos, CString(_T("CBA")));
// Verify CString("ABC") is not in the list.
ASSERT(myList.Find(CString(_T("ABC"))) == NULL);
Vedi anche
Esempio MFC COLLECT
CObject
Classe
Grafico della gerarchia
CMap
Classe
CArray
Classe