VBScript: 过程和函数中的传址参数与传值参数
传值(by value)参数
传值参数用ByVal关键字说明。ByVal为默认值,不加任何关键字仍表示传值参数。
通过传值,过程中的代码可以修改这个参数,但修改是临时的。
传址(by reference)参数
传址参数用ByRef关键字说明。
通过传址,过程中的代码对这个参数的修改是永久的。
看下面的例子很好的说明了传值与传址的区别:
Dim lngA
Dim lngB
lngA = 1
lngB = 1
ByRefByValExample lngA,lngB
MsgBox "lngA = " & lngA & vbNewLine & "lngB = " & lngB
Sub ByRefByValExample(ByRef lngFirst, ByVal lngSecond)
lngFirst = lngFirst +1
lngSecond = lngSecond +1
End Sub