• ベストアンサー

VBで動的なメモリの確保

VBでCのmallocのように動的なメモリ確保はどうやってするのでしょうか? 具体的にはstring型をn個用意したいのです。

質問者が選んだベストアンサー

  • ベストアンサー
  • josyo_m
  • ベストアンサー率63% (28/44)
回答No.1

お疲れ様です。 動的配列を作成し以下のように使います。 (例 Dim strArray() As String Dim i As Long '// 動的に配列要素を作成 ReDim strArray(1 To 5) '// 値を設定 For i = LBound(strArray) To UBound(strArray)   strArray(i) = CStr(i) Next i '// 値を表示 For i = LBound(strArray) To UBound(strArray)   Debug.Print strArray(i), Next i '// 動的配列の開放 Erase strArray 間違っていたらごめんなさい。

sha-girl
質問者

お礼

とても参考になりました。 ありがとうございました。

その他の回答 (1)

  • mfuku
  • ベストアンサー率50% (173/345)
回答No.2

VBではメモリの概念は隠蔽されてますので、String型は可変サイズとして扱われます(上限があるにはありますが)。 従って、 Dim strHensu As String と宣言すれば、動的にメモリを割り当てるようなことせず、どんなサイズの文字列も扱えます。 逆に、サイズを固定にする場合は、 Dim strHensu As String * 100 という感じにします。 また、配列変数を動的にする場合は Redimを使います。

sha-girl
質問者

お礼

レスありがとうございました。 解決しました。

関連するQ&A

専門家に質問してみよう