简单问题请高手指点:CList和CArray的区别是什么,使用中有什么不同?
如题 问题点数:20、回复次数:11Top
1 楼sdlly(海阔天空)回复于 2004-12-01 08:59:58 得分 0
这个就是数组和链表的区别吧
Top
2 楼changpei(我的博客:http:\\changpei.tianyablog.com)回复于 2004-12-01 09:13:50 得分 10
CList相当于Double-linked-link(双向链表)
CArray相当于C里面的Array(队列)Top
3 楼HunterForPig(留着口水的猪)回复于 2004-12-01 09:29:14 得分 0
一个链表,一个数组,
差别:搜索效率不同。插入效率不同。。。。。:)
Top
4 楼960379(文物:眉毛搭桥)回复于 2004-12-01 09:36:14 得分 0
一个是队列,直线;一个是阵列,矩形Top
5 楼pknife(小李飞刀)回复于 2004-12-01 09:37:57 得分 0
我还是喜欢用CArrayTop
6 楼lg2001(万人迷)回复于 2004-12-01 09:44:25 得分 10
CArray采用队列方式存储数据,因而其内部数据元素是以物理方式顺序排列的,所以检索、顺序执行GetAt()等函数的速度是相当快的。但是由于每次队列长度变化后,数据都要重新申请内存、拷贝内存、释放内存,因而Insert/Add/RemoveAt()的速度都很慢。
CList采用链表方式存储数据,因而当链表数据有所变动时,只做了一下指向变动,所以即使数据元素非常多单个数据元素也很大,执行Insert/Add/Remove的速度都很快,但是因为没有统一的Index,因而如果要找到某个元素只有遍历整个链表。
整体上说,List的使用比较繁琐,特别为小尺寸数据设计List更是得不偿失的,这也是为什么有CWordArray而没有CWordList的原因,因而在大多数情况下应该有限考虑是否可以使用Array来存储数据。Top
7 楼kevin_wang(砸锅卖铁)回复于 2004-12-01 09:46:55 得分 0
我还是觉得STL的list用的方便Top
8 楼lifezhu(来福)回复于 2004-12-01 11:06:57 得分 0
同意楼上 STL 的 vector list可以取代一切数组,M$的CArray真的垃圾Top
9 楼oyljerry(【勇敢的心】→ ㊣提拉米苏√㊣)回复于 2004-12-01 11:22:41 得分 0
CList相当于双向链表,CArray对应数组Top
10 楼crystal521(【云淡风轻】)回复于 2004-12-01 13:22:21 得分 0
数组和链表的区别,只不过MFC进行了封装Top
11 楼yujia120(永不停息)回复于 2004-12-01 13:28:07 得分 0
数据结构的区别了
使用上可能都可以实现同一工作Top
相关问题
- CList和CArray在功能上有什么区别???
- CList 与CArray的主要区别是什么
- 求:Sql Server与Oracle的特性区别,希望高人们指点指点
- javabean和ejb的区别?望各位高手详细指点!3KU!!
- getSession(true)和getSession(),有什么区别?请高手指点
- sendmessage()和postmessage()有什么区别,请高手指点
- 指点指点
- ???请指点·Weblogic5.1的配置文件中,TXDataSource和DataSource有什么区别?
- 这两种赋值方法真的有区别吗?内有代码,请指点
- 菜鸟问题:vc/mfc项目,debug和release有什么区别?请指点……




