当前位置: 首页 > 图文教程 > 脚本技术 > VBScript > VBS ArrayList Class vbs中的数组类

VBScript
一个最简单的vbs类实例代码
实用vbs提醒小程序
使用vbs下载文件的代码加强版
vbs病毒制作之一复制自身的vbs脚本
用vbs实现的exe2swf工具脚本代码
vbs更改3389远程桌面端口的脚本
用vbs实现的强制杀进程的脚本
用VBS脚本实现更换Windows Xp序列号的代码
vbs实现右键菜单中添加CMD HERE
用VBS脚本删除指定以外的文件或文件夹
用VBS记录客户机操作的代码
用vbs删除某些类型文件和磁盘空间报告的脚本
两个批量挂马vbs脚本代码
关于vbs WebBrowser导航问题
LCL.VBS 病毒源代码
用vbs实现向任何电子邮件发送邮件
用VBS检测Guest状态的脚本
用vbs实现的输入助手附使用方法
vbs base64 解密脚本代码
用vbs实现修改dns的网关脚本

VBScript 中的 VBS ArrayList Class vbs中的数组类


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 138 ::
收藏到网摘: n/a

Class ArrayList
Private items()
Private size
Private Sub Class_Initialize
size = 0
ReDim items(1)
End Sub
Private Sub Class_Terminate
items = null
End Sub
Public Function Add(ByVal value)
If (size = Ubound(items)) Then EnsureCapacity((size + 1))
items(size) = value
size = size + 1
Add = size
End Function
Public Property Get Item(index)
Item = items(index)
End Property
Public Property Let Item(index, vObject)
items(index) = vObject
End Property
Property Get Count
Count = size
End Property

Public Property Get Capacity()
Capacity = Ubound(items)
End Property
Public Property Let Capacity(value)
If (value <> Ubound(items)) Then
If (value < size) Then Err.Rise 6
If (value > 0) Then
ReDim Preserve items(value)
Else
ReDim Preserve items(3)
End If
End If
End Property
Private Sub EnsureCapacity(ByVal min)
If (Ubound(items) < min) Then
Dim num1 : num1 = IIf((Ubound(items) = 0), 4, (Ubound(items) * 2))
If (num1 < min) Then num1 = min
Capacity = num1
End If
End Sub

Private Function IIf(j, r1, r2)
IF (j) Then
IIf = r1
Else
IIf = r2
End IF
End Function
End Class

示例:
Dim al : Set al = new ArrayList
al.Add(1)
al.Add(2)
al.Add(3)
al.Add(4)
al.Add(5)
al.Add(6)
al.Add(7)
al.Add(8)
al.Add(9)
al.Add(10)
For i = 0 To al.Count -1
w("Index"& i &": "& al.Item(i))
Next
w("Count: "& al.Count)
w("Capacity: "& al.Capacity)
Sub w(o)
Response.Write(o &"<br />")
End Sub