【发布时间】:2011-07-16 00:59:45
【问题描述】:
我对 VBS 很陌生,但我似乎无法实现即使是最简单的东西。我想要一个在私有成员中保存数组的类。因为我想“注入”数组,所以我尝试使用Let 功能实现“setter-method”。
Class CPhase
Private m_AllowedTasks()
Public Property Let AllowedTasks(p_AllowedTasks)
m_AllowedTasks = p_AllowedTasks
End Property
Private Sub Class_Initialize()
ReDim m_AllowedTasks(0)
End Sub
End Class
这个类的用法如下:
Dim allowed
allowed = Array("task1", "task2")
Dim phase
Set phase = New CPhase
phase.AllowedTasks = allowed
这会在 Let 方法中导致“Microsoft VBScript 运行时错误 (...):类型不匹配”。我还尝试使用“ByVal”、“ByRef”的不同组合,但由于完全没有使用 VBS 的经验,我找不到解决方案。那么我做错了什么?
非常感谢任何有用资源的提示或链接! 谢谢!
【问题讨论】:
标签: arrays vbscript properties getter-setter