作者chinoyan ()
看板Visual_Basic
标题Re: [VB6 ] 阵列太小,资料无法全部存下
时间Mon Jan 14 19:55:46 2013
※ 引述《rufus43 (rufus43)》之铭言:
: 大家好
: 我遇到的问题是,我需要宣告一个阵列为
: Dim a(901,65536) As Double
: 来储存901个文件,每个文件有65536笔资料
: 但是目前这样的宣告因为所需的资料元素太多而无法宣告,
: 所以我用a(65536),在For回圈中使用,做完一个文件的处理,
: Erase掉a阵列,再去存下一个文件,之後再做处里,以这样的方式做完全部的文件,
: 但是这样开档读档的方式实在太慢,时间将近要两、三几个月,想询问大家
: (1)是否可以打破VB6阵列宣告大小的限制
Option Explicit
Dim a(901, 65536) As Double
Private Sub Form_Load()
Dim i As Long, j As Long
For i = 0 To 901
For j = 0 To 65536
a(i, j) = i * j
Next
Next
Debug.Print a(901, 65536)
End Su
跑起没问题啊,
依MS的资料:
阵列大小考虑事项
长度限制
每个阵列之维度长度都受限於 Integer 资料型别的最大值,也就是 (2 ^ 31) - 1。然而
,阵列之总大小也同时受限於系统可用的记忆体。若您试图对总大小超过可用的 RAM 之
阵列进行初始化,Common Language Runtime 将掷回 OutOfMemoryException 例外状况。
: (2)或者有更快速的方式去存这些资料
: 谢谢大家!!!
--
████ █ ★ ████ █ █ █
█ █ █ █ █ █ 超 级 热 烈 欢 迎
█ ████ █ █ █ ████ █
█ █ █ █ ███★ █ █ 欢迎到嘉义版!
★███ █ █ █ █ █ █ █
讯驰电脑-路径 →
嘉义市林森西路496号 →
(05)2244-526 →
顺发斜对面
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.166.174.92
1F:→ yauhh:参考资料中提CLR,这... 01/14 23:25
2F:→ fumizuki:vb6 Integer 少一半的大小,也不会有Exception 01/15 12:49