VB6コードからC#への自動翻訳と、someArray(3)
からsomeArray[3]
に翻訳された変換プログラムを確認しています。しかしそれに応じて、古いコードのドキュメントでは、翻訳されたバージョンでやっているように、4番目ではなく3番目の要素を選ぶべきです。配列インデックスはVB6で0ベースですか?
VB6では配列インデックスは0ベースですか?それとも、彼らは1で始まるのですか?
VB6コードからC#への自動翻訳と、someArray(3)
からsomeArray[3]
に翻訳された変換プログラムを確認しています。しかしそれに応じて、古いコードのドキュメントでは、翻訳されたバージョンでやっているように、4番目ではなく3番目の要素を選ぶべきです。配列インデックスはVB6で0ベースですか?
VB6では配列インデックスは0ベースですか?それとも、彼らは1で始まるのですか?
有り - アレイである(一般的に)0 VB6
これに対する例外は、明示的Dim someArray(1 To 10) as Int
構文が使用されている場合であり、又はOption Base 1
がコードモジュールの先頭に宣言されたときに基づきます。
これはありません。Collection
オブジェクトをループすると、私はそれらが1ベースであると確信しています。
"Explicit Type Syntaxを使用していない限り" *または*コードブロックの先頭に 'Option Base 1'が宣言されています –
@Matt:良い点。 –
@Mattこの文は現在のファイルにのみ影響しますか? –
短い答えは、配列の下限はあなたがと言われている通りです。です。
デフォルトは(Option Base 1
によって上書きされない限り)ベース0
ですが、(Dim arr(-42 To 42)
がDim(3)
と同じくらい有効である)あなたが望む任意の値に下限を宣言することができます。
また、あるオブジェクトによって配列が返された場合、その下限は、そのオブジェクトがそれを設定しているものである。たとえば、Excel
Range.Value
のリファレンスは1
の配列を返します。
これは配列*宣言*ですか、配列*要素*にアクセスしていますか? –
@Cody配列要素へのアクセス。 –