看板 Visual_Basic 關於我們 聯絡資訊
※ 引述《taurus510 (ciao!)》之銘言: : 各位前輩好 : 由於資料處理需要宣告8個 : dim array(156,65536) as double : 大小的陣列 : 有的是用來存每個資料的參數 : 有的是用來存每個資料的出現次數 : 資料前置處理完後,進行後續的運算 : 這8個陣列皆儲存後續運算時需要用到的資料 : 無法erase掉 : 之後的運算還需要多宣告兩個exp(156,65536)陣列 : 可是到這裡就會顯示記憶體不足@@ : ----------------------- : 以下小弟做了個測試 : Dim a(), b(), c(), d(), e(), f() As Boolean : Class = 156 : num = 65536 : ReDim a(Class, num) : ReDim b(Class, num) : ReDim c(Class, num) : ReDim d(Class, num) : ReDim e(Class, num) : ReDim f(Class, num) : 每次到e的時候就會顯示記憶體不足 : 不管陣列宣告為 Boolean Double Single : 有大大可以解惑嗎? : 目前電腦記憶體是8G : 如果再添購RAM是否可以改善這種情況? : 還是程式本身的限制的問題? Dim Class As Long, num As Long Dim a() As Double, b() As Double, c() As Double, d() As Double, e() As Double, f() As Double Class = 156 num = 65536 ReDim a(Class, num) ReDim b(Class, num) ReDim c(Class, num) ReDim d(Class, num) ReDim e(Class, num) ReDim f(Class, num) W7 64BIT + VB6 +8G RAM , TEST OK! -- ████ █ ★ ████ █ █ █ █ █ █ █ █ █ 超 級 熱 烈 歡 迎 █ ████ █ █ █ ████ █ █ █ █ █ ███★ █ █ 歡迎到嘉義版! ★███ █ █ █ █ █ █ █ 訊馳電腦-路徑嘉義市林森西路496號(05)2244-526順發斜對面 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.127.94.76 ※ 文章網址: http://www.ptt.cc/bbs/Visual_Basic/M.1397309990.A.B1A.html
taurus510:大大 謝謝,不過還有其他運算也需要用到如此大的陣列QQ 04/13 00:12
MOONRAKER:阿你照他的dim寫法不就得了 04/14 02:14
taurus510:謝謝,測試後已經OK了! 謝謝! 04/14 17:02
taurus510:所以是分開宣告,記憶體不會配置在相同連續區塊 04/14 17:07
taurus510:是這個意思嗎? 04/14 17:07
fumizuki:問題在變數型態沒有指定,一律都是Variant 04/14 20:09
taurus510:喔喔! class,和num 感謝! 04/14 20:22
fumizuki:還有a到e都是Variant 04/14 22:57