欢迎来到天天文库
浏览记录
ID:57646269
大小:17.04 KB
页数:5页
时间:2020-08-30
《VC中CList用法及其成员的使用.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、VC中CList用法及其成员的使用初学mfc者,往往对CList等mfc的Collect类的使用感到迷惑,在使用中经常会遇到许多问题,导致对vc中的Collect类的使用产生了惧怕。以下,就个人经历而言,告诉大家如何使用CList。CList是一个双向链表类。 1、头文件名不可少Clist类定义在Afxtempl.h头文件中,因此在使用该类时,需要加这个头文件名。 2、理解CList的声明和构造方法CList的声明如下:templatec
2、lassCList:publicCObject由此,我们知道CList是一个模版类,那么他的两个class是什么意思呢?下面看一个例子:CListlist;//链表对象1CListlist2;//链表对象2这里的第一个参数CString是实例化的类型,第二个参数是类的成员函数的参数的调用形式,通常是类型 引用,当然也可以是对象,而不是引用。对象和引用的区别,可以看一下C++基础知识方面的书。//////////////////
3、/////////////////////////////////////////////////////////////MSDN:使用时要#include ConstructionCListConstructsanemptyorderedlist.建立一个链表example:CListmyList;//建立一个int链表CListmyList(16);//建立一个cstring的链表,后面的16表示链表里面数据的个数
4、,如果不写的话,可能是不限个数?CListmyList;//建立一个MYTYPE类型(自定义)的链表如果不存入数据的话,刚建立的链表是空的,头尾都为空 Head/TailAccessGetHeadReturnstheheadelementofthelist(cannotbeempty).返回链表的头数据例子:CListmyList;for(inti=0;i<10000;i++){myList.AddTail(int(i));}//存入数据int
5、tmp=myList.GetHead();//tmp被赋予了0 GetTailReturnsthetailelementofthelist(cannotbeempty).返回链表的尾数据CListmyList;for(inti=0;i<10000;i++){myList.AddTail(int(i));}//存入数据inttmp=myList.GetTail();//tmp被赋予了9999 OperationsRemoveHeadRemovestheelementfromt
6、heheadofthelist.移除链表头数据,链表数据个数减1,返回缩减前的头数据例子:CListmyList;for(inti=0;i<10000;i++){myList.AddTail(int(i));}//存入数据inttmp=myList.RemoveHead();//tmp被赋予了之前的头数据:0;同时数据个数变为9999; RemoveTailRemovestheelementfromthetailofthelist.移除链表尾数据,链表数据个数减1,返回缩减前的
7、尾数据例子:CListmyList;for(inti=0;i<10000;i++){myList.AddTail(int(i));}//存入数据inttmp=myList.RemoveTail();//tmp被赋予了之前的尾数据:9999;同时数据个数变为9999; AddHeadAddsanelement(oralltheelementsinanotherlist)totheheadofthelist(makesanewhead).在链表头处插入新数据,链表数据个数加1,返
8、回新的链表头位置(POSITION);例子:CListmyList;for(inti=0;i<10000;i++){myList.AddTail(int(i));}//存入数据POSITIONpos=myList.AddHead(int(314));//链表有了一个新的头数据:314;同时链表个数变为10001;pos为新的头的位置; AddTailAddsanelement(oralltheelementsinanotherlist)tothetailofthelist(m
此文档下载收益归作者所有