今天又测试了一下:
1、Dim A(1 To 266895344) As Integer
2亿6千6百8十9万5千3百4十4,不会溢出,
而 Dim A(1 To 266895345) As Integer
2亿6千6百8十9万5千3百4十5,就溢出了
2、Dim A(1 To 16337, 1 To 16336) As Integer
266895344的开平方数,组成二维数组
16337 * 16336 = 266881232 < 266895344 不会溢出
而
Dim A(1 To 16337, 1 To 16337) As Integer 组成的二维数组
16337 * 16337 = 266897569 > 266895344 就溢出了
3、Dim A(1 To 644, 1 TO 644 , 1 TO 643) As Integer
266895344的开三次方数,组成三维数组, 644 * 644 * 643 = 266675248 < 266895344 不会溢出
而
Dim A(1 To 644, 1 TO 644 , 1 TO 644) As Integer
组成的三维数组 ,644 * 644 * 644 = 267089984 > 266895344 就溢出了
看来 266895344 是VB60数组的最大下标界限,不论是多少维数,
维数下标的乘积必须小于 266895344 ,即 2亿6千6百8十9万5千3百4十4。
是不是这样有待大家测试、验证!