局部变量声明

DIM Identifier AS Datatype [ = Expression ]

在过程或者函数中,声明一个局部变量。

该变量仅仅能在声明所在的函数或者过程中访问。

示例

DIM iVal AS Integer
DIM sName AS String
DIM hObject AS Object
DIM hCollection AS Collection

初始化

变量可以使用任意表达式初始化。

示例

DIM bCancel AS Boolean = TRUE
DIM Languages AS String[] = [ "fr", "it", "es", "de", "ja" ]
DIM DefaultLanguage AS String = Languages[1]

作为选择,可以用对象的新实例初始化变量。

DIM Identifier AS NEW Class ( Arguments ... )

示例

DIM aTask AS NEW String[]
DIM aCollection AS NEW Collection(gb.Text)

或者,可以用一个本地动态数组初始化变量。 更多信息参见数组声明

复合声明

可以在同一行上声明多个变量:
  • 每个声明必须用逗号隔开。

  • 可以仅指定标识符。它将与后续第一个具有完整声明的标识符具有相同的声明。

示例

DIM Text AS String, Matrix AS NEW Float[3, 3]
DIM X, Y, W, H AS Integer

局部静态变量声明

自从 3.17

STATIC Identifier AS Datatype [ = Expression ]

在过程或函数中声明局部静态变量。

局部静态变量在函数终止时保持其值。它实际上就像一个全局静态变量,但是 只能由声明它的过程或函数访问。

Example

Sub Test() As Integer
  Static N As Integer = 1
  N *= 2
  Return N
End

Dim I As Integer
For I = 1 to 10
  Print Test();;
Next
Print
2 4 8 16 32 64 128 256 512 1024

参见