给数组多次赋值时,怎样使得原来所赋的值不被覆盖掉,高手请求教!
定义有下面一个数组,给数组多次赋值时,怎样使得原来所赋的值不被覆盖掉。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 数组,结果后面的把前面的覆盖了。怎样使得前面所赋的值不被后面的覆盖掉啊!请高手求教.
--------------------编程问答-------------------- "前面所赋的值不被后面的覆盖掉",那前面所赋的值要保存到哪里去呢? --------------------编程问答-------------------- 假如前面有100个数存到数组xshu1(1)到 xshu1(100 )中了,后面的所赋的值就从 xshu1 (101)开始储存下去,这样可以吗? --------------------编程问答-------------------- 用redim扩展数组。 --------------------编程问答--------------------
当然可以。而且一般的设计方法是,你先估一下xshu1最终实际需要的容量,一开始就留够空间,比如redim xshu1(1000) --------------------编程问答-------------------- 使用带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 个元素。 --------------------编程问答-------------------- 谢谢,你们的帮助,我终于解决了! --------------------编程问答--------------------
正解!
补充:VB , 基础类