声明说明符以显式传递参数的值
语法
用法
说明
在声明语句的参数列表中,
ByVal将导致变量的副本通过其值传递给过程(例如,子或函数)。
这意味着如果变量
x 的值被传递,则原始变量
x 不会以任何方式进行修改;但是,如果变量通过
ByRef,原始变量
x 的值可以被调用函数修改。
对面
ByRef.
Byref参数和
函数结果的上下文中也使用了
ByVal关键字,其中可以用于显式覆盖副引用语义,以便将指针原样传递给{参数或函数结果。以供参考:
例子
Sub MySub(ByVal value As Integer)
value += 1
End Sub
Dim MyVar As Integer
MyVar = 1
Print "MyVar:"; MyVar '输出= 1
MySub MyVar
Print "MyVar:"; MyVar 'output = 1, because byval won't更改全局传递的值。
Sleep
End
方言差异
与QB差别
参考