在VBScript中,函數參數的傳遞方式主要有兩種:按值傳遞和按引用傳遞。
例如:
Function ChangeValue(param)
param = 10
End Function
Dim x As Integer
x = 5
ChangeValue x
MsgBox x ' 輸出5,因為x的值沒有被改變
例如:
Function ChangeValueByRef(ByRef param)
param = 10
End Function
Dim y As Integer
y = 5
ChangeValueByRef y
MsgBox y ' 輸出10,因為y的值被改變了
需要注意的是,如果函數沒有使用ByRef關鍵字,那么參數默認是按值傳遞的。此外,VBScript不支持多重參數傳遞,即一個函數只能接收一個實參。如果需要傳遞多個參數,可以將它們組合成一個數組或對象,然后將該數組或對象作為實參傳遞給函數。
另外,VBScript中的數組和對象也是通過引用傳遞的。這意味著,如果將數組或對象作為參數傳遞給函數,并且在函數內部修改了數組或對象的屬性,那么原始數組或對象的屬性值也會受到影響。