设为首页 加入收藏

TOP

在C语言中大概实现VC++中的LISTARRAY功能方法(二)(二)
2014-11-24 00:04:10 来源: 作者: 【 】 浏览:43
Tags:言中 大概 实现 LISTARRAY 功能 方法
move;
77. pList->Delete = ListDelete;
78. return pList;
79. }
80. #endif

此方法是由方法1发展而来,在方法1中添加了两个参数,一个是SIZE参数,一个是CHANGESIZE参数,SIZE参数是初始化时的数组容量,CHANGESIZE是在数据刚好达到SIZE时将数组容量改变的数组添加或减少的容量。比如初始大小为SIZE,然后当数组增加到SIZE的时候要存储第SIZE + 1个数据的时候就重新申请一块比SIZE大CHANGESIZE的内存,然后再将数据转移进去,将原内存释放,将新内存的指针保存。减少是一个道理的,当减到SIZE的时候,将原尺寸减个CHANGESIZE,然后申请内存,转移数据,释放老内存,保存新指针。
此方法的好处是不用每次都申请、释放内存、转移数据,操作LIST比较频繁的时候,用此方法比用第1种方法在速度上有优势!

作者: sx_wpc
首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Lua5.2如何实现C调用中的Continua.. 下一篇洗牌算法

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: