關於動態數組的儲存方式

來源:互聯網
上載者:User

在VB.Net中可以使用動態數組,動態數組和普通的固定數組一樣,在記憶體中是連續的。

當使用ReDim語句重新定義數組的大小時,ReDim語句會釋放現有數組並且建立具有相同秩的新數組,最後根據該數組的類型為其設定預設值。

在使用ReDim語句的同時,加上Preserve關鍵字的情況下,重新建立的數組會保留重新建立之前的數組中的值。

 

例:

 

Dim arr1() As Integer

ReDim arr1(0)

For i As Integer = 1 To 10

    ReDim Preserve arr1(i)

    arr1(i) = i

Next i

 

MSDN上的解釋:

數組替換。ReDim 釋放現有數組並且建立具有相同秩的新數組。新數組將替換陣列變數中已釋放的數組。
不使用 Preserve 初始化。如果未指定 Preserve,ReDim 會將新數組的元素初始化為它們資料類型的預設值。
使用 Preserve 初始化。如果指定 Preserve 修飾符,Visual Basic 會將這些元素從現有數組複製到新數組。

http://msdn.microsoft.com/zh-cn/library/w8k3cys2(v=VS.80).aspx

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.