定義有下面一個陣列,給陣列多次賦值時,怎樣使得原來所賦的值不被覆寫掉。
Dim xshu() As Integer
Open "E:\資料庫1.txt" For Input As #1
xshu1 = xsh() '''''''''''''''呼叫函式
Open "E:\資料庫2.txt" For Input As #1
xshu1 = xsh() '''''''''''''''呼叫函式
Open "E:\資料庫2.txt" For Input As #1
xshu1 = xsh() '''''''''''''''呼叫函式
說明把呼叫函式回傳的陣列xsh()的值 賦值給xshu1 陣列,結果后面的把前面的覆寫了。怎樣使得前面所賦的值不被后面的覆寫掉啊!請高手求教.
uj5u.com熱心網友回復:
"前面所賦的值不被后面的覆寫掉",那前面所賦的值要保存到哪里去呢?uj5u.com熱心網友回復:
假如前面有100個數存到陣列xshu1(1)到 xshu1(100 )中了,后面的所賦的值就從 xshu1 (101)開始儲存下去,這樣可以嗎?uj5u.com熱心網友回復:
用redim擴展陣列。uj5u.com熱心網友回復:
當然可以。而且一般的設計方法是,你先估一下xshu1最終實際需要的容量,一開始就留夠空間,比如redim xshu1(1000)
uj5u.com熱心網友回復:
使用帶Preserve關鍵字的Redim陳述句。Dim MyArray() As Integer '宣告動態陣列。
Redim MyArray(5) '分配 5 個元素。
For I = 1 To 5 '回圈 5 次。
MyArray(I) = I '初始化陣列。
Next
下面的陳述句重定義該陣列的大小,但沒有清除其中的元素。
Redim Preserve MyArray(15) '大小重定為 15 個元素。
uj5u.com熱心網友回復:
謝謝,你們的幫助,我終于解決了!
uj5u.com熱心網友回復:
正解!
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/144982.html
標籤:VB基礎類
上一篇:關于注冊表問題,請大家幫忙。
