Julia - for文内でよく起きるUndefVarErrorの対処法
JuliaのFor文内でUndefVarErrorが出る場合
Juliaで誰もが一度は遭遇するのがUndefVarErrorです。
ERROR: LoadError: UndefVarError: num not defined
Pythonや他の言語を勉強した人がJuliaでコードを書くと、あれっとなる場所でこのエラーが起こります。 例を上げてみましょう。
NG例
num = 0 for i=1:10 num += i end print(num)
ぱっと見これで問題なさそうですが、Juliaでこれは動きません。
Juliaでは、グローバル変数をスコープ内で扱う場合には明示的にglobal修飾子をつける必要があるのです。
OK例
num = 0 for i=1:10 global num += i # ここにglobalが必要! end print(num)
グローバル変数とローカル変数のさらに詳しい記事も書きましたので、ぜひ読んでみてください!