Я пытаюсь понять правила прицела в Джулии.Я пробовал цикл for
с z
в качестве обычной целочисленной переменной:
z = 2
for i = 1:4
z += 1
end
println(z)
, и это дает мне ошибку UndefVarError: z not defined
, если я не поместил global z
внутри цикла.
Однако, если я сделаю z
массив 1x1, он будет прекрасно работать без global
:
z = [2]
for i = 1:4
z .+= 1
end
println(z)
$ julia test.jl
[6]
В чем разница между областями действия массивов и переменных?