2024年6月15日发(作者:)
VB6动态拼接数组(将两个数组连在一起)
展开全文
既然是将两个数组合为一个,那么就会涉及到大量的数据拷贝,那么效率上来说,还
是API最适合,如果是用for循环来做不知道要到猴年马月。
要用到的东西:
1.[api]CopyMemory 玩过API的都知道它了吧,用法和说明自己去百度找哦
2.[api]GetTickCount 用来计算时间的
Preserve ReDim 是重定义数据大小,Preserve 保留数组现有数据
方便获取数组的大小,它得到的值始终要加1
下面贴出核心代码模块,临时做的测试,就没有取名字了:
[vb] 查看源代码复制打印
1. Option Explicit
2. Public Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (p
Dst As Any, pSrc As Any, ByVal ByteLen As Long)
3. Public Declare Function GetTickCount Lib "kernel32" () As Long
4. '求数组的大小
5. Public Function ArrayLength(argArray) As Long
6. On Error GoTo ArrayLength_Error
7. ArrayLength = UBound(argArray) + 1
8. Exit Function
9. ArrayLength_Error:
10. ArrayLength = 0
11. End Function
12. '数组组合(连接在一起)
13. 'argDest 目标数组,它会会变大
14. 'argSource 需要将它合并到argDest
15. 'argIndex argSource 的起始位置,有的时候并不是一定要从数组的第一个
元素开始复制,-1表示从0开始
发布评论