等と表示されることがあります。
#未初期化の変数があります(disp)
変数の初期化がなされていなくてもそれとなく使えるのがHSPの強みだということは理解しているのですが
本当に初期化しなくていいのでしょうか?流れとしては初期化しておいた方が良いのでしょうか?
処理スピードとしてはどちらが早いのか気になります。
使う時に初期化されるから、先にまとめて初期化しない方が早いのでしょうか?
皆様は使用する変数について、きちんとすべて定義しているでしょうか?どのようにプログラム書いている
のか教えてください。
この疑問が経緯として、初期化しているハズなのに未初期化の変数があります
と出ていて悩んでいたのがきっかけです。以下がそれを再現したスクリプトです。
*main gosub *getdisplays mes disp button "",*label // Debug画面表示させる為にわざと存在しないラベルにしてある stop *getdisplays disp = 4 return
このスクリプトにおいて、disp変数は、getdisplaysの中で定義されていますがメインの方では
定義されていないので、デバッグ画面に見初期化されていないと表示されているのではないか?
と考えて居ます。
メインの方では定義せず、サブルーティンの方で定義する形でも別に問題ないのではないのではと
考えて居ます。
また、似たような話しで、
このプログラム、問題無く実行されます。しかしながら、見て頂きますと
dim year // 数値型として宣言 year = gettime(0) year = str(year) // 文字列型として使用 dialog ,,year
同じ変数を、数値型として使用し、それをそのまま文字列に使用しているのが分かると思います。
よくやる手段だと思いますがこういう使い方はあまり推奨されないでしょうか?
しかしながら変数を使う数を減らせるというメリットもあるかと思います。
色々と質問が多くなり、まとまらない文章となってしまい、すみませんが、皆様の考え方を知りたく
また、処理スピードなど、知りたく、質問させて頂きました。