11/08/08 14:17:39.27
module 内で初めて実行されたかどうかのフラグを使いたいんだけど下の使い方でいいの?
今のチェックをすり抜けてるだけで実際には未初期化の変数使ってるから後のバージョンでエラーにされる?
#cmpopt varinit 1
#module test_module
#deffunc dummy ; varinit 1 のエラー回避用
is_initialized=0
return
#deffunc run_once ; この関数が一回だけ呼ばれるようにしたい
if is_initialized : return ; varinit 1 のとき関数 dummy を消すとここでエラーになる
mes "initialize"
is_initialized=1
return
#deffunc hoge
run_once
mes "hoge"
return
#deffunc huga
run_once
mes "huga"
return
#global
hoge
huga
hoge