是否有现成的或惯用的方法来声明 Julia 程序中的入口点(即相当于 C 中的 main
或 if __name__ == "__main__"
在 Python 中构造)?
这似乎是一个重要的功能,以便编写较大的结构化代码,这些代码不会在交互模式下使用,但我找不到任何关于如何在 Julia 中实现这一点的提示,如果有的话(a可能的逃逸路线可以是编写一个任意函数作为 main ,然后在主模块末尾的顶层调用它一次,但这并不优雅,甚至可能效率不高。 TIA。
最佳答案
您可以编写一个 main
函数,并且不从文件的顶层调用它。要从命令行运行该程序,您可以使用 julia -L file.jl -e 'main(some,args)' 。 -L
开关告诉 Julia 加载您的文件,然后 -e
告诉它计算以下表达式。还有一个用于计算和打印的 -E
开关(我认为它是“大声计算”,因为大写字母看起来“大声”)。
与 C 的 main
或 Python 的 if __name__ == "__main__"
相比,这有几个优点:
您不必有一个入口点!您可以在加载文件后计算任何表达式,因此您不必将所有命令行功能塞进一个函数中。
您编写的调用使用完整的 Julia 语法,因此您通常可以避免解析参数。像
-e main(53)
这样的东西用 integer 53 调用main
,不需要atoi
内的>主要
。
关于function - 在 Julia 中声明主函数/入口点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24923726/