如何从Nim主块返回退出代码?

Kei*_*son 4 program-entry-point return exit-code nim-lang

在Nim中,要编写作为某种主要功能执行的代码,您可以这样做(类似于Python中的主要检查):

when isMainModule:
    echo ("Hello, Nim!")
Run Code Online (Sandbox Code Playgroud)

但是,对于我一生来说,我不知道如何返回错误代码。传统上总是有一个使主函数返回的选项int,但是由于实际上不是在主函数中proc,因此似乎不可能return; 我唯一想出的方法是raise例外。当然,有一种方法可以控制您的退出代码是否为零?

tjo*_*son 7

我想system.quit可能就是您要寻找的。根据Nim文档

proc quit(errorcode: int = QuitSuccess) {..}

立即使用退出代码停止程序。

quit(QuitSuccess)当您的nim程序完成而不会发生意外行为(对于这是预期行为的平台)时,将隐式调用proc 。引发的未处理异常等同于调用quit(QuitFailure)