[MFC] CList

1、CList说明

 

类CList支持可按顺序或按值访问的非唯一对象的有序列表。CList 列表与双链接列表行为相似。

template < class TYPE, class ARG_TYPE > class CList : public CObject

参数:TYPE存储在列表中的对象类型。ARG_TYPE用于参考存储在列表中的对象的类型。可以是一个参考。

例如:CList<Pipe, Pipe&> pipe;//生成一个Pipe类型的CList

说明: 1\类型POSITION的变量是列表的关键字。可使用POSITION变量作为循环因子来顺序遍历列表,作为书签来保存位置。然而,位置不同于索引。

2\元素插入在列表的标题、在末尾和已知的POSITION时非常快。按值或索引来查找一个元素,需要顺序查找。如果列表太长,此查找可能较慢。如果需要转储列表中的个别元素,必须设置转储上下文的深度为1或更大。

相似模版类:CMap, CArray

 

2、CList类的成员函数

 

构造函数

CList 构造一个空的有序列表。

 

标题/末尾访问

GetHead() 返回列表的标题元素(不能为空)。

GetTail() 返回列表的末尾元素(不能为空)。

 

操作

RemoveHead() 从列表标题中移走元素。

RemoveTail() 从列表末尾移走元素。

AddHead() 添加一个元素或另一个列表的所有元素到列表标题(生成新的标题)。

AddTail() 添加一个元素或另一个列表的所有元素到列表尾部(生成新的尾部)。

RemoveAll() 从列表中移走所有元素。

 

循环

GetHeadPosition() 返回列表标题元素的位置。

GetTailPosition() 返回列表尾部元素的位置。

GetNext() 获取用于遍历下一个元素。

GetPreev() 获取用于遍历的前一个元素。

 

获取/修改

GetAt() 在指定的位置上获得元素。

SetAt() 在指定的位置上设置元素。

RemoveAt() 从列表中删除一个由位置确定的元素。

 

插入

InsertBefore() 在指定的位置前插入一个新的元素。

InsertAfter() 在指定的位置后插入一个新的元素。

 

查找

Find() 获得由指针值确定的元素位置。

FindIndex() 获得由基于零的索引指定的元素位置。

 

状态

GetCount() 返回此列表中的元素数。

IsEmpty() 检测列表是否为空。

posted @   beautifulzzzz  阅读(4381)  评论(0编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
点击右上角即可分享
微信分享提示