查看: 515  |  回复: 0
  VB6 技巧:用Mid$命令超速字符串添加操作
楼主
发表于 2023年12月25日 22:59

从头开始删除集合项目

删除集合中的所有内容有许多方法,其中有些非常得迅速。来看看一个包含10,000个项目的集合:

Dim col As New Collection, i As Long
For i = 1 To 10000
     col.Add i, CStr(i)
Next
For i = 1 To col.Count Step 1
    col.Remove i
Next
For i = col.Count To 1 Step -1
    col.Remove i
Next

试验证明,前者要快于后者百倍多,比如0.06秒比4.1秒。原因在于:当引用接近末尾位置的集合项目时,VB必须要从第1个项目开

始遍历整个的项目链。 

更有趣的是,如果集合项目的数量加倍,那么从末尾开始删除与从头开始删除,前者要比后者花费的时间将成倍增长,比如前者是2

4秒,后者可能为0.12秒这么短!
最后提醒您:删除集合的所有内容的最快方法就是“毁灭”它,使用下面的语句: 

Set col = New Collection

对于一个包含20,000个项目的集合,上述操作仅仅耗时0.05秒,这比使用最快的循环操作进行删除也要快2倍左右。

您需要登录后才可以回帖 登录 | 立即注册
【本版规则】请勿发表违反国家法律的内容,否则会被冻结账号和删贴。
用户名: 立即注册
密码:
2020-2024 MaNongKu.com