ASPでの呼び出し関数Call使用上の注意点について

2810 ワード

Function TestFun(Tstr)
    TStr = "Fun2"
End Function

Sub TestSub(TStr)
    Tstr = "Sub2"
End Sub

Dim Fun, [Sub]

Fun = "Fun1"

Call TestFun(Fun)
Msgbox Fun     '     "Fun2"

Fun = "Fun1"
TestFun(Fun)
Msgbox Fun  '      "Fun1"

[Sub] = "Sub1"
Call TestSub([Sub])
Msgbox [sub]    '     "Sub2"

[Sub] = "Sub1"

TestSub [Sub]
Msgbox [Sub] '     "sub2"

結論:
1、 パラメータ付き関数値呼び出しか参照呼び出しかを示すパラメータが表示されない場合、Call関数は参照呼び出しであり、Callは値呼び出しではない
2.パラメータ付きプロセスで、パラメータに指定された呼び出し値または参照呼び出しが表示されない場合、Call呼び出しがあるかどうかにかかわらず、参照呼び出しである