vba redim用法 vb中的redim是什么意思?
vb中的redim是什么意思?ReDim為數(shù)組變量重新分配存儲空間。可選的修改器preserve用于在僅更改最后一個維度的大小時保留現(xiàn)有數(shù)組中的數(shù)據(jù)。使用ReDim語句更改已聲明數(shù)組的一個或多個維度的
vb中的redim是什么意思?
ReDim為數(shù)組變量重新分配存儲空間。可選的修改器preserve用于在僅更改最后一個維度的大小時保留現(xiàn)有數(shù)組中的數(shù)據(jù)。
使用ReDim語句更改已聲明數(shù)組的一個或多個維度的大小。如果您有一個大數(shù)組,并且不再需要它的某些元素,那么ReDim可以通過減小數(shù)組的大小來釋放內(nèi)存。另一方面,如果代碼確定數(shù)組需要元素,ReDim可以添加更多元素。
ReDim語句僅適用于陣列。它對標(biāo)量(僅包含單個值的變量)、集合或結(jié)構(gòu)無效。
ReDim只能在流程級別使用。這意味著變量的“聲明上下文”必須是過程,而不是源文件、命名空間、接口、類、結(jié)構(gòu)、模塊或塊。
例如:
有一個字節(jié)數(shù)組a。如果我們知道這個數(shù)組的最大限制只能是4,我們使用dim
dim a作為字節(jié)(4)
但是如果我們不能預(yù)先確定它的大小或者需要在運行時更改它的大小,我們需要使用動態(tài)數(shù)組
VB中ReDim語句可以改變數(shù)組的維數(shù)和類型嗎?
redimpreserve是:生成一個新數(shù)組-之前數(shù)組的所有元素都將被復(fù)制到新數(shù)組中,所以只能在原來數(shù)組的末尾添加新元素。另外,如果不改變上一個維度,會帶來一個不可知的問題:新維度的下一個維度數(shù)組無法定義,VB不知道新維度包含什么,包含多少東西,如何為您定義,所以是不允許的。最終,不存在這樣的問題。
VB中ReDim語句可以改變數(shù)組的維數(shù)和類型嗎?
不,ReDim的格式是ReDim[preserve]name(boundlist)。它只能改變數(shù)組的大小,不能改變數(shù)組的類型
如果數(shù)組的維數(shù)沒有事先確定,就不能詳細確定。如果字符串的長度不確定,可以采用以下方法:Dim a()as integer。。。。。N=長度(text1)ReDim a(N)