[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() 检测列表是否为空。
[MFC] CList的更多相关文章
- MFC clist 学习设计
最近想设计一款WEBSHELL的综合破解工具. 然后设计到了日志输出那儿,因为MFC不熟悉,刚学.所以一直在想用edit控件好还是clist比较好. 今天设计了一下日志输出界面,然后记录一下学习笔记. ...
- [Beautifulzzzz的博客目录] 快速索引点这儿O(∩_∩)O~~,红色标记的是不错的(⊙o⊙)哦~
3D相关开发 [direct-X] 1.direct-X最小框架 [OpenGL] 1.环境搭建及最小系统 [OpenGL] 2.企业版VC6.0自带的Win32-OpenGL工程浅析 51单片机 [ ...
- MFC小型工具通用界面框架CLIST控件+右键菜单功能
MFC-小型工具通用界面框架 0x1 场景 由于工作需要我会写代码开发工具给客户或者同事用.代码都能实现,但写个黑乎乎的命令行工具给别人用确实显得不够专业,用别人写好的成型工具又担心有后门. 所以掌握 ...
- MFC-01-Chapter01:Hello,MFC---1.2 MFC简介
1.2 MFC简介 MFC是Microsoft提供的放置Windows API的面向对象的包装的C++类库.MFC大约封装了好几百个类,其中有一些可以直接调用,有些类可以作为用户自己的类的基类.一些M ...
- [MFC] 高仿Flappy bird 桌面版
这是今年年初做的东西,一直没有时间整理,现在拿出来分享下~ 目录 开发背景 开发语言及运行环境 效果展示 游戏框架说明 游戏状态及逻辑说明 经典算法说明 重量级问题解决 开发感想 一.开发背景: fl ...
- [MFC] MFC 仿 Flappy bird PC桌面版
http://www.cr173.com/ 前些日子发现朋友都在玩flappy bird这款虐心的小游戏,网上也炒得很火,于是俺也想下一个玩玩.可是矮穷挫至今还没配上高端的智能机,于是去网上搜了一下, ...
- MFC编程基础
http://www.cnblogs.com/lzmfywz/archive/2012/03/15/2399403.html 一.MFC类库概述 MFC(Microsoft Foundation cl ...
- MFC容器类介绍
我们知道如果是单个的少数几个值弄些int , long,float ,double等类型的变量来装这些值就行了.但如果值太多这样就比较麻烦.当然数据超级多时就直接放数据库里存着去了. 但如果数值不多不 ...
- MFC编程入门
一. 什么是MFC? 如果你要建立一个Windows应用程序,应该如何下手? 好的开端是从设计用户界面开始. 首先,你要决定什么样的用户能使用该程序并根据需要来设置相应的用户界面对象.Windows用 ...
随机推荐
- JavaScript valueOf() 函数详解
valueOf()函数用于返回指定对象的原始值. 该方法属于Object对象,由于所有的对象都"继承"了Object的对象实例,因此几乎所有的实例对象都可以使用该方法. 所有主流浏 ...
- Nginx编译参数大全 configure参数中文详解
./configure --help--help 显示本提示信息--prefix=PATH 设定安装目录--sbin-path=PATH 设定程序文件目录--conf-path=PATH 设定配置文件 ...
- linux(debian)下邮件发送
关键字: exim4 mutt smtp 主要的事情就是配置exim4,按照网上的流程来.在这里总结一下: 需要修改的文件有三个:/etc/exim4/update-exim4.conf.conf ...
- Spring 4集成 Quartz2(转)
本文将演示如何通过 Spring 使用 Quartz Scheduler 进行任务调度.Spring 为简化 Quartz 的操作提供了相关支持类.本文示例使用的相关工具如下: Spring 4.2. ...
- shell和bat 监控进程,自动关机
1.linux 下监控进程,进程结束后关机 新建文件 monit.sh $chmod +x monit.sh 加入代码 #!/bin/sh a=; ]; do |;then echo "sh ...
- Eclipse中Maven项目添加jar包
各个标签的含义如下: Overview:显示maven项目的一些基本信息Dependencies:添加jar包的页面Plugins:添加maven插件的页面.比如tomcat-maven-plugin ...
- java文件末尾追加内容的两种方式
java 开发中,偶尔会遇到在文件末尾对文件内容进行追加,实际上有多种方式可以实现,简单介绍两种: 一种是通过RandomAccessFile类实现,另一种是通过FileWriter类来实现. 实现方 ...
- cms替换主页的步骤
cms替换主页的步骤 .先做好静态页面: .在D:\wamp\www\phpcms\install_package\phpcms\templates文件夹下建新的文件夹tianqiwangluo(项目 ...
- 新一代IDE Light Table开源:让编程工作更简单
近日,Light Table项目创始人Chris Granger在其博客上宣布Light Table开源,将代码全部托管在GitHub上,遵循GNU开源许可.与此同时,还发布了0.6版本,该版本添加了 ...
- mac操作快捷键