【发布时间】:2013-07-01 14:39:12
【问题描述】:
我正在查看 ByVal 和 ByRef through MSDN,其中提到当我们通过 ByVal 传递参数时,值始终由 ByVal 传递。
在我下面的示例中,它总是通过 ByRef。我做错了什么?
Function sampleFunction(ByVal val) 'Even though here i am passing as ByVal it is taking as ByRef
val=val+1
sampleFunction=val
End Function
x=50
temp=sampleFunction(x)
msgbox temp 'prints 51
从函数返回时如何通过 ByVal 传递参数?
【问题讨论】:
-
您似乎将通过引用传递变量与返回值的概念混淆了。如果您在
sampleFunction之后调用msgbox x,它将打印50。