C++中CSTRINGLIST用法详解

CStringList类成员

构造

CStringList

构造一个空的CString对象列表

首/尾访问

GetHead

返回此列表(不能是空的)中头部的元素

GetTail

返回此列表(不能是空的)中尾部的元素

操作

RemoveHead

从列表的头部删除元素

RemoveTail

从列表的尾部删除元素

AddHead

在列表的头部添加一个元素(或者是另一个列表中的所有元素),即产生一个新的头部

AddTail

在列表的尾部添加一个元素(或者是另一个列表中的所有元素),即产生一个新的尾部

RemoveAll

删除此列表中的所有元素

重复

GetHeadPosition

返回列表中的头部元素的位置

GetTailPosition

返回列表中尾部元素的位置

GetNext

获取用于重复的下一个元素

GetPrev

获取用于重复的前一个元素

获取/修改

GetAt

获取给定位置处的元素

SetAt

设置给定位置处的元素

RemoveAt

从此列表中删除由位置指定的一个元素

插入

InsertBefore

在一个给定位置之前插入一个新元素

InsertAfter

在一个给定位置之后插入一个新元素

搜索

Find

获取由字符串值指定的元素的位置

FindIndex

获取由一个从零开始的索引指定的元素的位置

状态

GetCount

返回此列表中的元素个数

IsEmpty

测试列表是否为空(没有元素)

CStringList是CString链表,在MFC编程中STL之外的另一选择,用起来更加简洁.

插入数据:AddTail();AddHead()

删除数据:RemoveAll();RemoveAt();RemoveHead();RemoveTail()

取得元素个数:GetCount()

取得某个元素值:GetAt(cstringList.FindIndex(index))//index为整数

取得头尾元素:GetHead() ;GetTail(),

遍历最好用上面的方式,不要用POSITION变量,用FindIndex可以了。

初始化:

CStringList listFileName;
listFileName.RemoveAll();

添加操作:

listFileName.AddTail(szFullPathName);

遍历操作:

POSITION rPos;
rPos = listFileName.GetHeadPosition();
while (rPos != NULL)
{
strFileName = listFileName.GetNext(rPos);
strLog += "/r/n" + strFileName;
}

以上所述就是本文的全部内容了,希望大家能够喜欢。