我读到全局变量对性能有显着的影响。
为了避免它们,我将所有内容都放在了 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()
当前 Julia 1.11 测试版导出了
Base.@main
,它指示 Julia 运行标记的函数:
function (@main)(args)
println("Hello, world!")
end
参见 https://docs.julialang.org/en/v1.11.0-rc2/manual/command-line-interface/#The-Main.main-entry-point