- 締切済み
【ActionScript】 var宣言を自動化できませんか?
FLASH8(ActionScript2.0)使用者です。 関数を使用するときうっかり var を付け忘れて痛い目にあうことがよくあります。 例えば for文の i とか… PHPみたいに関数内の変数は全部別物扱いにできればいいのにと思うわけですが全自動な方法はないものでしょうか。 やはり全ての変数に var を付ける、それしかないんでしょうかね。 お詳しい方、よろしくお願いいたします。 *ActionScript3.0なら可能とかいうご回答でも結構です。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- BlurFiltan
- ベストアンサー率91% (1611/1754)
var を付けたいか付けたくないかはコンピュータには判断できないと思います。 【例1】 -------------------------- var i:Number = 0; function myFunction() { for (var i:Number = 0; i<=2; i++) { trace(i); } } myFunction(); trace(i); -------------------------- 出力→ 0 1 2 0 【例2】 -------------------------- var i:Number = 0; function myFunction() { for (i=0; i<=2; i++) { trace(i); } } myFunction(); trace(i); -------------------------- 出力→ 0 1 2 3 【例1】 のように i を使いたいときもあれば,【例2】 のように i を使いたいときもあります。 それを var によって選択できるのです。 全部自動で 【例2】 扱いになってしまったら,【例1】のように使いたいとき困ります。 困られては困るので, 今度は逆に 【例1】 のように使う記号が開発されると思います。 すると今度は その記号を全自動にしてほしいと思うかもしれません(絶対思います)。 堂々巡りですよ。
- gau_puzzler
- ベストアンサー率48% (39/81)
phpみたいに、勝手に変数作られるほうが困ります 以下のようなプログラムを考えてみてください (変数は宣言済み) data1 = 10; data2 = 20; data3 = data1 + data2; data3には30が入りますよね ところが、おっちょこちょいのために data1 = 10; data2 = 20; data4 = data1 + data2; data3を表示するとなぜか0...(ってあたりまえですけど) 変数が勝手に作られると、変数名の打ち間違えのバグにはまります ですので、一般的なコンパイラー言語は 変数宣言を強要しているのです 実行してからのバグに悩まされるより コンパイル時点でエラー出してくれるほうが良いのです
補足
わかりました。 ありがとうございました。
補足
この件はあきらめます。 ありがとうございました。