【问题标题】:Can't Use Parentheses When Calling a Sub - VBScript调用子时不能使用括号 - VBScript
【发布时间】:2023-03-23 20:35:01
【问题描述】:

我正在用 VBScript 编写这段代码,这是我以前从未使用过的。

我这样写:替换 (strContent, st, arr (k,i), 1)

它给了我一个“调用子时不能使用括号”的问题。 有人可以帮忙吗?

我尝试过在线搜索,但没有任何帮助。

谢谢!

【问题讨论】:

  • 看到了,不太明白解决方案是什么...
  • 对于 VBScript 中的新功能来说,这是一个非常受欢迎的问题,Replace 是返回结果的函数,您可以将其分配给变量,例如 strResult=Replace(...)

标签: vbscript parentheses


【解决方案1】:

基本上,当您使用这样的过程或函数时:

Foobar arg1, arg2, arg3

您不能在参数列表周围使用括号。当您使用Call 关键字或在赋值或条件中使用函数的返回值时,您必须在参数列表周围使用括号,例如:

Call Foobar(arg1, arg2, arg3)

result = Foobar(arg1, arg2, arg3)

If Foobar(arg1, arg2, arg3) Then
  ...
End If

【讨论】:

  • 我们尝试了“呼叫”并且没有括号,就像您的第一个示例一样,但它不起作用。我们的解决方案是使用返回值。
【解决方案2】:

感谢 Panayot Karabakalov 找到了答案。

我们尝试使用 Call 并且不带括号:

Replace strContent, st, arr (k,i), 1

但没有任何效果。最终的解决方案是:

strContent = Replace (strContent, st, arr (k,i), 1)

感谢大家快速而有帮助的回复!你们从来没有让我们失望。

【讨论】:

    猜你喜欢
    • 2011-09-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-02-05
    • 1970-01-01
    • 2017-07-23
    • 2020-12-29
    • 1970-01-01
    相关资源
    最近更新 更多