我正在使用VBScript,我想知道是否有办法调用存储在字符串变量中的函数名?
这是我的尝试?
a = "b"
sub b()
msgbox "c"
end sub
a()
但它总是会导致错误
输入不匹配'a'
答案 0 :(得分:15)
正确答案是:使用GetRef(),如:
Function F(p)
F = p + p
End Function
Dim FP : Set FP = GetRef("F")
WScript.Echo FP("a")
WScript.Echo FP(123)
输出:
aa
246
答案 1 :(得分:3)
似乎像是这应该有效:
Dim a
a = "Call b()"
Eval(a)
Sub b
' Do stuff
End Sub
答案 2 :(得分:-3)
Dim x
Sub b
print "xxx"' Do stuff
End Sub
x = "call b()"
Execute(eval("x"))