web-dev-qa-db-ja.com

VB6-文字列配列の定義

プロジェクトをやっていて、VB6を使用する必要があります。私はいくつかの基本的なタスクに苦労しています。これは、一部には(私が思うに)ドキュメントが不足しているためと、通常はCベースの構文を持つ言語を使用しているためです。

C#で配列を定義すると、通常は次のようになります。

string[] s = {"a", "b", "c", "d" };

VB6でこれを行います。

しかし、VB6では、私がこれまで行ってきたすべてのこと:

Dim s(0 To 3) As String
s(0) = "a"
s(1) = "b"
s(2) = "c"
s(3) = "d"

上記の例よりもVB6で配列を定義するより効率的な方法はありますか? C#アプローチに似た方法ですか?

10
Loren Kuich
Dim s
s = Array("a", "b", "c", "d")
11
Anderson

ここに別の可能性があります:

Dim S() As String

S = Split("a|b|c|d", "|")
9
Bob77

Variant配列ではなくString配列が必要な場合は、Array()が生成されます。

Function ArrayString(ParamArray tokens()) As String()
    ReDim arr(UBound(tokens)) As String
    Dim i As Long
    For i = 0 To UBound(tokens)
        arr(i) = tokens(i)
    Next
    ArrayString = arr
End Function

...

Dim a() As String
a = ArrayString("foo", "bar", ..., "qux")
8
Alex K.