CStringList类成员
构造
构造一个空的CString对象列表

 
首/尾访问
GetHead
返回此列表(不能是空的)中头部的元素
GetTail 返回此列表(不能是空的)中尾部的元素

 
操作
RemoveHead
从列表的头部删除元素
RemoveTail 从列表的尾部删除元素
AddHead 在列表的头部添加一个元素(或者是另一个列表中的所有元素),即产生一个新的头部
AddTail 在列表的尾部添加一个元素(或者是另一个列表中的所有元素),即产生一个新的尾部
RemoveAll 删除此列表中的所有元素

 
重复
GetHeadPosition
返回列表中的头部元素的位置
GetTailPosition 返回列表中尾部元素的位置
GetNext 获取用于重复的下一个元素
GetPrev 获取用于重复的前一个元素

 
获取/修改
获取给定位置处的元素
SetAt 设置给定位置处的元素
RemoveAt 从此列表中删除由位置指定的一个元素

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

 
搜索
获取由字符串值指定的元素的位置
FindIndex 获取由一个从零开始的索引指定的元素的位置

 
状态
返回此列表中的元素个数
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;
}

cstringlist的更多相关文章

  1. C++ CSTRINGLIST用法

    CStringList类成员   构造 CStringList 构造一个空的CString对象列表 首/尾访问 GetHead 返回此列表(不能是空的)中头部的元素 GetTail 返回此列表(不能是 ...

  2. cstringlist不完全用法

    CStringList是CString链表,在MFC编程中STL之外的另一选择,用起来更加简洁. 插入数据:AddTail();AddHead() 删除数据:RemoveAll();RemoveAt( ...

  3. MFC类目录及头文件(转)

    类 描述 头文件 CAnimateCtrl 自动化通用控件 afxcmn.h CArchive afx.h CArchiveException afx.h CArray afxtempl.h CAsy ...

  4. MFC容器类介绍

    我们知道如果是单个的少数几个值弄些int , long,float ,double等类型的变量来装这些值就行了.但如果值太多这样就比较麻烦.当然数据超级多时就直接放数据库里存着去了. 但如果数值不多不 ...

  5. Windows使用WxWidgets开发界面(c++)环境搭建

    一直想学习wxWidgets,之前使用的都是wxPython,现在终于鼓起勇气学习这个了,发现原来是基于vc6.0开发的.所以最好的学习办法就是安装vistual studio 2010,方便学习看代 ...

  6. [转]标准C++字符串string以及MFC6.0字符串CString的tokenize和split函数

    标准字符串的方法: /******************************************** the tokenize function for std::string ****** ...

  7. C++实验指导

    选择 Build > Set Active Configuration 菜单,在对话框中选择 Win32 Debug. 当程序调试成功后,一般将其生成发布版,这样可使运行程序优化,方法是在上述对 ...

  8. 向combobox控件中添加元素

    函数定义: bool FillComboBox(CComboBox* pc, CStringList& slValues, bool bOnlyUniqueValues = false); 函 ...

  9. MFC中List box的用法

    首先在头文件中创建对象,CSGrid m_proViewList;//创建表头#pragma region 建立grid表的标题 m_proViewList.AppendColumn(_T(" ...

随机推荐

  1. maven bug之Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.5.1:compile (default-compile) on project acSpaceCommon: Fatal error compiling: tools.jar not found: C:\Program Files\J

    maven打包项目的时候一直报这个异常  一般的解决办法我都试过 在pom.xml加代码 也不行  只有10分了  求大神解答 这是因为测试代码时遇到错误,它会停止编译.只需要在pom.xml的< ...

  2. Linux: Start and Enable firewall

    enable firewall systemctl enable firewalld start firewall systemctl start firewalld check firewall s ...

  3. 程序员之---C语言细节20(符号和有符号之间转换、两数相加溢出后数值计算)

    主要内容:无符号和有符号之间转换.两数相加溢出后数值计算 #include <stdio.h> /* 这个函数存在潜在漏洞 */ float sum_elements(float a[], ...

  4. postgresql 删除旧的版本9.5 并同时 升级到9.6

    sudo apt-get purge postgresql-9.5 On Ubuntu 14.04 I have done this to get the latest postgres: sudo ...

  5. OC-内存管理的一些要点

    创建一个BOOK对象,对其属性进行声明 定义. @property 属性声明 定义了对属性的赋值 -(void) dealloc 方法在对象销毁的时候进行调用. #import <Foundat ...

  6. Parallel and Perpendicular

    题目链接 题意: 输入n,求正n边形中的对角线1和对角线2的个数(对角线1:至少与其它一个对角线平行:对角线2:至少与其它一个对角线垂直).对角线不能是多边形的边 (4 ≤ n ≤ 10e5) 分析: ...

  7. user agent stylesheet 解决方法

    写了一个写了一个页面字体一直是加粗.原来是 strong,b{ user agent stylesheet font-weight:bold; } 引起的 解决方法:又一次定义 strong,b{ f ...

  8. Configuration.SectionGroups

    对于一个空的配置文件,默认自带的sectiongroups 默认有10个section节点 1 ConfigurationSectionGroupName=system.runtime.seriali ...

  9. bzoj 1601 灌水

    题目大意: 决定把水灌到n块农田,农田被数字1到n标记 把一块土地进行灌水有两种方法,从其他农田饮水,或者这块土地建造水库 建造一个水库需要花费wi,连接两块土地需要花费Pij. 计算所需的最少代价 ...

  10. yistack