没有动态数组,就算利用 dim Arr()as string这样声明,一旦赋值后,数组大小也就固定了。如果要改变数组大小,要用redim 命令:
redim arr(10)
preserve redim arr()
加preserve 可以不清空数组,保持原有数据。
动态数组是指在声明时没有确定数组大小的数组,即忽略圆括号中的下标;当要用它时,可随时用ReDim语句重新指出数组的大小。使用动态数组的优点是可以根据用户需要,有效利用存储空间。
“数组下标越界”是编程中一个比较常见的错误。其原因如下:
1、数组的起始值可能是从 0 开始,即,第1个数组元素是 (0) 。比如,某数组有10个元素,那么第1个元素访问是 数组(0),而最后一个元素是 数组(9)。
2、如果动态改变了数组的大小,那么,如果访问的元素超出数组的最大值,就会出现错误。
建议:
1、检查数组的定义情况。
2、在代码中,通过调试跟踪,检查运行中数组的元素成员的实际最大数量。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)