关于二维数组索引超出了数组界限,该怎么处理
关于二维数组索引超出了数组界限
定义窗体级二维数组arr(76,1)
在function go()当中给arr赋值并返回arr值!
在打印子程序 sub print()中调用go(),运行程序执行prin(),第一次正常,再次执行print(),结果出现错误,“索引超出了数组界限”,于是在function go()的最后加入erase arr,两次执行print(),出现错误在arr(76,1)赋值时,“未将对象引用到实例”,于是在于是在function go()的erase arr后加入redim arr(76,1),结果出现,“索引超出了数组界限”!
超级郁闷!这问题该如何解决!
------解决方案--------------------
Dim arr(,) As String
...
...
...
Dim rowsCount As Integer = lvw.Items.Count
Dim i As Integer
ReDim arr( rowsCount, 1 )
For i = 0 To rowsCount - 1
arr(i, 0) = lvw.Items.Item(i).Text
arr(i, 1) = lvw.Items.Item(i).SubItems(1).Text
Next
试试
定义窗体级二维数组arr(76,1)
在function go()当中给arr赋值并返回arr值!
在打印子程序 sub print()中调用go(),运行程序执行prin(),第一次正常,再次执行print(),结果出现错误,“索引超出了数组界限”,于是在function go()的最后加入erase arr,两次执行print(),出现错误在arr(76,1)赋值时,“未将对象引用到实例”,于是在于是在function go()的erase arr后加入redim arr(76,1),结果出现,“索引超出了数组界限”!
超级郁闷!这问题该如何解决!
------解决方案--------------------
Dim arr(,) As String
...
...
...
Dim rowsCount As Integer = lvw.Items.Count
Dim i As Integer
ReDim arr( rowsCount, 1 )
For i = 0 To rowsCount - 1
arr(i, 0) = lvw.Items.Item(i).Text
arr(i, 1) = lvw.Items.Item(i).SubItems(1).Text
Next
试试