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. 内核信号处理 & CPU8个通用寄存器

    内核信号处理参考: http://www.spongeliu.com/165.html 信号本质上是在软件层次上对中断机制的一种模拟(注意区分中断.异常.信号),其主要有以下几种来源: 程序错误:除零 ...

  2. Android从源码看ListView的重用机制

    不管是android还是iOS,列表视图应该是最复杂的控件了.android中的listview从命名能够看出是个一维数组,而iOS中的tableview则是二维数组.但事实上须要注意的地方是差点儿相 ...

  3. 2015:WPS笔试-Android开发岗位

    题目一共三道: 一:实现一个函数,能够推断两条直线的关系:平行.重合.垂直或相交. 二:实现一个函数.能够得到随意两个日期的相隔天数. 三:针对题目一或题目二,实现一个完整的单元測试. (笔试后在网上 ...

  4. js阻碍DOM加载

    今天用谷歌做了个小测试 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&qu ...

  5. A. Train and Peter

    A. Train and Peter time limit per test 1 second memory limit per test 64 megabytes input standard in ...

  6. Frequent values(线段树+离散化)

    http://poj.org/problem?id=3368 题意:给出一个非降序排列的整数数组,对于询问(i,j),输出区间[i,j]中出现最多的值的次数. 思路:经典的RMQ,不过我用线段树做的. ...

  7. AcWing算法基础1.2

    排序 归并排序 归并排序和快速排序相反,快排是先排后分再合并,归并则是先分后排再合并 归并排序时间复杂度是O(n logn) 分析:    ------------------------------ ...

  8. Git 迁库 标签

    Git迁库 (一)克隆裸库 git clone --bare https://github.com/SunArmy/Tourist.git 克隆之后进入该目录下是这样的 (二)创建新的版本库 这里我已 ...

  9. Spinner的样式大致简介

    Spinner Spinner 是一个列表选择框,会在用户选择后,展示一个列表供用户进行选择.Spinner是ViewGroup的间接子类,它和其他的Android控件一样,数据需要使用Adapter ...

  10. ios cocos2d-x 多点触摸

    需要在 AppController.mm文件中添加一句多点触摸支持: [_view setMultipleTouchEnabled:true];