Julia 中的初始化或主要函数

Init or main function in Julia

我了解到全局变量对性能有显着影响。

为了避免它们,我将所有内容都放在 init 函数中,正如我阅读 here.

简单的例子,integer.jl:

function __init__()
    n = 0
    while n < 2
        try
            print("Insert an integer bigger than 1: ")
            n = parse(Int8,readline(STDIN))
        catch Error
            println("Error!")
        end
    end

    println(n)
end

当我从命令行 运行 julia integer.jl 时,没有任何反应。 function main() 也不行。

我应该怎么做才能让它发挥作用?

(此外,您能否更正任何错误、非高效代码或非惯用语法?)

名称 __init__ 保留为模块中函数的名称,在加载模块时会自动 运行,因此除非您正在定义它,否则不要使用那个名字。您可以调用此函数 main(没有特殊含义),然后像这样调用它:

function main()
    # do stuff
end

main()