2014-05-13 33 views
0

如果我有我自己在VBScript類:VBScript的實例類,並在同一時間填入變數

class TestClass 
    public var1 
    public var2 
end class 



我可以實例化和填充這樣:

dim classVar 
set classVar = new TestClass 
classVar.var1 = "test1" 
classVar.var2 = "test2" 



我的問題是,是否有一個實例化和填充的單線程?我的希望是能夠做到這一點的同時添加類的列表:

dim listVar 
set listVar = CreateObject("System.Collections.ArrayList") 

listVar.add new TestClass ("test" "test2") 

這可能在VBScript?謝謝!

回答

1

不,VBScript/VB6/VBA不支持構造函數的類。

你可以使用一個工廠:

function MakeTestClass(a, b, c) 
    set MakeTestClass = new TestClass 
    MakeTestClass.var1 = a 
    MakeTestClass.var2 = b 
end function 

listVar.add MakeTestClass(11, 22, 33) 
+1

回答了這個問題,並給了一個選擇。這對我的目的來說是完美的。謝謝! – Aaron

0

或者一個(或多個)特殊的init(成員)函數返回我:

>> Class cC 
>> Private n 
>> Public Function init(p) 
>>  n = p 
>>  Set init = Me 
>> End Function 
>> Public Function toString() 
>>  toString = "cC object: " & n 
>> End Function 
>> End Class 
>> WScript.Echo New cC.init(4711).toString() 
>> 
cC object: 4711 
>> 
相關問題