arraylist
従来の ASP を使用してクラスに属性を追加するにはどうすればよいですか?
私の例(動作していません):
Class AA
Public AA_id
Dim data: set data = CreateObject("System.Collections.ArrayList")
End Class
arraylist
従来の ASP を使用してクラスに属性を追加するにはどうすればよいですか?
私の例(動作していません):
Class AA
Public AA_id
Dim data: set data = CreateObject("System.Collections.ArrayList")
End Class
メソッド内のクラスメンバーを初期化する必要があります-関数、クラスコンストラクターのサブルーチン。当然のことながら、これらの最良のものはコンストラクター内にあります。
カスタム VBScript クラスの一部として .NET ArrayList を使用する方法を示す完全に機能するコード:
<%
Class MyCustomClass
Private internalArrayList
Private Sub Class_Initialize()
Set internalArrayList = Server.CreateObject("System.Collections.ArrayList")
End Sub
Private Sub Class_Terminate()
Set internalArrayList = Nothing
End Sub
Public Sub AddItem(oItem)
internalArrayList.Add(oItem)
End Sub
Public Function ToString()
Dim data, x
data = "List contains " & internalArrayList.Count & " item"
If internalArrayList.Count<>1 Then data = data & "s"
For x=0 To internalArrayList.Count-1
data = data & "<br />"
If IsObject(internalArrayList(x)) Then
data = data & "complex object of type " & TypeName(internalArrayList(x))
ElseIf IsArray(internalArrayList(x)) Then
data = data & "array with " & (UBound(internalArrayList(x)) + 1) & " items"
Else
data = data & internalArrayList(x)
End If
Next
ToString = data
End Function
End Class
%>
複雑なオブジェクトの追加を含む使用例:
Class Foo
Public Dummy
End Class
Dim myInstance, myFoo
Set myInstance = New MyCustomClass
myInstance.AddItem("hello")
myInstance.AddItem("world")
myInstance.AddItem(Array(1, 2, 3))
Set myFoo = New Foo
myFoo.Dummy = "just checking"
myInstance.AddItem(myFoo)
Response.Write(myInstance.ToString())