CObject |
└CStringList |
CStringList類支持CString對象的列表。所有的比較都是通過值比較來完成的,這意味著不是比較字元串的地址而是比較字元串中的字元。
CStringList的成員函式類似於類CObList類的成員函式。由於具有這些相似性,你可以參考關於CObList的參考檔案來獲取CStringList成員函式的詳細說明。如果在說明中看到某一函式的返回值是一個指向CObject對象的指針,則可以用一個CString(而不是一個CString指針)來代替它。如果看到某一函式的參數是一個指向CObject的指針,則可以用LPCTSTR來代替它。
例如,可以將
CObject*& CObList::GetHead() const;
轉換為
CString& CStringList::GetHead() const;
和將
POSITION AddHead( CObject* );
轉換為
POSITION AddHead( LPCTSTR );
CStringList與IMPLEMENT_SERIAL宏聯合起來支持其元素的連續和轉儲。如果一個CString對象列表被用一個重載的插入操作符或Serialize成員函式保存到一個存檔中,則它的每一個元素都按順序連續。
如果你需要數組中個別字元串元素的轉儲,則應該將轉儲環境的深度設定為1或更大。
當一個CStringList對象被刪除時,或當它的元素被刪除時,則相應的CString對象被刪除。
有關使用CStringList的更多信息,參見“Visual C++程式設計師指南”中的文章“集合”。
#include
CStringList類成員
構造
CStringList | 構造一個空的CString對象列表 |
首/尾訪問
GetHead | 返回此列表(不能是空的)中頭部的元素 |
GetTail | 返回此列表(不能是空的)中尾部的元素 |
操作
RemoveHead | 從列表的頭部刪除元素 |
RemoveTail | 從列表的尾部刪除元素 |
AddHead | 在列表的頭部添加一個元素(或者是另一個列表中的所有元素),即產生一個新的頭部 |
AddTail | 在列表的尾部添加一個元素(或者是另一個列表中的所有元素),即產生一個新的尾部 |
RemoveAll | 刪除此列表中的所有元素 |
重複
GetHeadPosition | 返回列表中的頭部元素的位置 |
GetTailPosition | 返回列表中尾部元素的位置 |
GetNext | 獲取用於重複的下一個元素 |
GetPrev | 獲取用於重複的前一個元素 |
獲取/修改
GetAt | 獲取給定位置處的元素 |
SetAt | 設定給定位置處的元素 |
RemoveAt | 從此列表中刪除由位置指定的一個元素 |
插入
InsertBefore | 在一個給定位置之前插入一個新元素 |
InsertAfter | 在一個給定位置之後插入一個新元素 |
搜尋
Find | 獲取由字元串值指定的元素的位置 |
FindIndex | 獲取由一個從零開始的索引指定的元素的位置 |
狀態
GetCount | 返回此列表中的元素個數 |
IsEmpty | 測試列表是否為空(沒有元素) |