【发布时间】:2019-05-18 17:59:17
【问题描述】:
我正在尝试在 Julia 中创建一个模块,该模块在每次调用其中一个函数时都会增加一个变量。
module A
a = 0
export get_and_increment_a
function get_and_increment_a()
a = a + 1
return a
end
end
using .A
println(get_and_increment_a())
println(get_and_increment_a())
我希望 prinln() 给我
1
2
但我有以下错误信息:
UndefVarError: a not defined
Stacktrace:
[1] get_and_increment_a() at ./In[1]:8
[2] top-level scope at In[2]:2
有人知道如何解决这个问题吗?
【问题讨论】:
-
我之前没有使用过 Julia,但您似乎导出了
get_a但没有提供任何定义。相反,您提供get_and_increment_a的定义。 -
另外你需要写
global a = a + 1,否则函数定义将无法按预期工作。
标签: julia