关于option base 的使用问题,请高人指教下

来源:百度知道 编辑:UC知道 时间:2024/05/29 15:38:06
Dim a() As Integer
Option Base 1
Private Sub Form_Click()
ReDim a(2, 2)
For i = 1 To 2
For k = 1 To 2
a(i, k) = i + k
Print a(i, k)
Next k, i
End Sub
我想问的是option base 1 放在dim 后面,程序运行不起来,option base放在dim前面时就没什么问题了。请问这是为什么啊?
在麻烦下解释:Option Base 语句只影响位于包含该语句的模块中的数组下界和Option Base 对 Array 或 ParamArray 不起作用。
谢谢了。

msdn:
Option Base 语句

在模块级别中使用,用来声明数组下标的缺省下界。

语法

Option Base {0 | 1}

说明

由于下界的缺省设置是 0,因此无需使用 Option Base 语句。如果使用该语句,则必须写在模块的所有过程之前。一个模块中只能出现一次 Option Base,且必须位于带维数的数组声明之前。

注意 Dim、Private、Public、ReDim 以及 Static 语句中的 To 子句提供了一种更灵活的方式来控制数组的下标。不过,如果没有使用 To 子句显式地指定下界,则可以使用 Option Base 将缺省下界设为 1。使用 Array 函数或 ParamArray 关键字创建的数组的下界为 0;Option Base 对 Array 或 ParamArray 不起作用。

Option Base 语句只影响位于包含该语句的模块中的数组下界。