如何在 VBScript 脚本中断言?

发布于 2024-08-23 01:41:34 字数 184 浏览 6 评论 0原文

VBScript 脚本?

是否有内置功能或者必须对其进行模拟?什么是最佳实践?

一个应用程序是在开发过程中测试对象是否Nothing

What is a good way to use asserts in VBScript scripts?

Is there built-in functionality for it or will it have to be emulated? What is best practice?

One application is to test for objects being Nothing during development.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

深爱成瘾 2024-08-30 01:41:34

一个可操作的答案(对于其他可能需要它的人)是定义这个函数,来自 Rosetta Code

    sub Assert( boolExpr, strOnFail )
        if not boolExpr then
            Err.Raise vbObjectError + 99999, , strOnFail
        end if
    end sub

调用:

    Set obj2 = Nothing
    Assert Not obj2 Is Nothing, "obj2 is Nothing!"

输出:

    someScript.vbs(17, 3) (null): obj2 is Nothing!

An operational answer (for others that may need it) is to define this function, from Rosetta Code:

    sub Assert( boolExpr, strOnFail )
        if not boolExpr then
            Err.Raise vbObjectError + 99999, , strOnFail
        end if
    end sub

Invocation:

    Set obj2 = Nothing
    Assert Not obj2 Is Nothing, "obj2 is Nothing!"

Output:

    someScript.vbs(17, 3) (null): obj2 is Nothing!
我是有多爱你 2024-08-30 01:41:34

遗憾的是,我不相信 VBScript 有任何内置的东西。您需要定义自己的 Assert 方法,并可能在构建脚本的发布副本时使用预处理器构建脚本或其他方法来删除它们。 (实际上,删除 - 至少注释掉 - Assert 调用是最好的,而不是仅仅使 Assert 的主体在发布的代码中不执行任何操作。)

Sadly, I don't believe VBScript has anything built-in. You'll need to define your own Assert method and probably use a pre-processor build script or something to remove them when building a release copy of your script. (Actually removing -- at least commenting out -- the Assert call is best, rather than just making the body of the Assert not do anything in the released code.)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文