web-dev-qa-db-ja.com

VB6でオブジェクトがNothingであることを確認するにはどうすればよいですか?

私のVB6アプリケーションでは、このように宣言されたオブジェクトの配列があります...

Dim MyArray() as MyClass

この配列は、処理が進むにつれて埋められます

Set MyArray(element) = passed_object

要素はもう必要ないので、

Set MyArray(otherelement) = Nothing

配列を使用するとき、次のようなループを使用したい

For i = 1 To Ubound(MyArray)
    If MyArray(i) <> Nothing Then    ' Doesn't compile
        ...do something...
    End If
Next i

しかし、私はコンパイルする可能性のあるものを得ることができません。私も試しました

If MyArray(i) Is Not Nothing Then

これを実行する必要がありますか。実行する場合、ここでどのテストを実行する必要がありますか?

16
Brian Hooper
If Not MyArray(i) Is Nothing Then
35
mwolfe02
If Not MyArray(i) Is Nothing Then
15
AakashM

の代わりに

IsNothing(<object here>)

これはVB6で機能するはずです。

<object here> Is Nothing
0
user2885606
    Private Function IsNothing(objParm As Object) As Boolean
        IsNothing = IIf(objParm Is Nothing, True, False)
    End Function
0
Chris Catignani