Crystal Reports Designer  

局部变量(Basic 语法)

具有局部作用域的变量,也称为局部变量,使用 Dim 或 Local 关键字声明。

Local x As Number 'equivalent to Dim x As Number

局部变量只限于单个公式以及该公式的单个求值。也就是说,无法从其他公式访问某个公式中的局部变量值。

示例

Rem Formula A
Local x as Number
x = 10
formula = x
Rem Formula B
EvaluateAfter ({@Formula A})
Local x as Number
formula = x + 1

函数调用 EvaluateAfter ({@Formula A}) 确保公式 B 在公式 A 之后求值。公式 A 返回一个值 10,公式 B 返回一个值 1。公式 B 无法访问公式 A 中的 x,因此不能使用值 10 来加 1;对于公式 B 中未初始化的局部变量 x,公式 B 改用默认值 0,因此加 1 后便得到 1。

也可以在不同的公式中使用相同的名称、不同的样式创建局部变量。例如,公式 A 和公式 B 中的类型声明与下列内容不冲突:

Rem Formula C
Local x as String
x = "hello"
formula = x

局部变量是三种作用域中最有效的。另外,它们在不同的公式中互不干扰。因而,只要可能最好将变量声明为局部变量。

另请参见

变量作用域 | 全局变量 | 共享变量