自作でちょっとしたものを作ろうと思うと、
関数とか、モジュール的なものを使いたくなるのですが
モジュールの中では、変数は流用されているのかなと思ってテストしてみました。
-----
goto *Main
#module myMod
; 値の初期設定
#defcfunc local setValue int nValue
a = nValue
return a
; 足し算
#defcfunc local addValue int nValue
a = a + nValue
return a
#global
*Main
ret = setValue@myMod(10)
mes "return:" + ret
ret = addValue@myMod(5)
mes "return:" + ret
mes "a:" + a
stop
-----
この結果は、
return:10
return:15
a:0
となりました。
つまり、どこで定義した変数も、クラス内のメンバ変数のような扱いということのようです。
生き続けて、他の関数からも見える。(addValue())
もちろん、外からは見えない。(最後のa)