1

そうすればDim array As String()、その配列のサイズを変更して、その場で何かを入れることができるようです。例えば:

Dim PackUrls As String()
PackUrls = Split(WebRequest("http://" + sPackBaseURI, sPackBaseURIUsername, sPackBaseURIPassword), ":")

また、エラーは発生せず、アレイで何も奇妙なことが起こっていません。

私は考えずにこれを行いました。次に、最初に配列のサイズを指定する必要があることを読みました。なぜこうなった?

4

2 に答える 2

1

これはあなたのコードで起こっていることです

'Create an empty string array called PackUrls
Dim PackUrls As String()

'Create a new string array from the Split function 
'and assign it to the variable PackUrls, replacing the old value.
PackUrls = Split(WebRequest("http://" + sPackBaseURI, _
                            sPackBaseURIUsername, sPackBaseURIPassword), ":")

Splitの結果からへのコピーはありませんPackUrls。元のコンテンツ(ちなみに何もありません)は、からの新しいコンテンツに置き換えられSplitます。したがって、アレイのサイズを変更する必要はありません。このようにコードを簡単に書き直すことができ、それは機能します:

Dim PackUrls As String() = Split(WebRequest("http://" + sPackBaseURI, _
                           sPackBaseURIUsername, sPackBaseURIPassword), ":")
于 2013-02-20T11:40:16.053 に答える
1

varに配列を割り当てると、サイズに関係なく、新しい配列に置き換えられます。varは同じタイプの新しいデータを指しているので、エラーは必要ありません。

配列を配列変数に割り当てる場合、アイテムを個別にコピーするのではなく、変数が新しい配列にポインティングします。

于 2013-02-20T11:23:22.330 に答える