ruby撲滅スレ その2
■ このスレッドは過去ログ倉庫に格納されています
018345
NGNG>変数の定義自体は強制だし、未初期化の変数を使う危険性を考えれば先行定義
>は問題がある。
Ruby でも未初期化の変数を使う危険性は伴ってるでしょ。
定義と初期化が同じということは未定義の変数使うことが未初期化の変数使う
ことと同義なんだから。
---- a.rb ----
p 1
p a
a = 1
---- end -----
> ruby -c a.rb
Syntax OK
> ruby a.rb
1
a.rb:2: undefined local variable or method `a' for #<Object:0x258bb0c>(NameError)
C/C++ や Java なんかだと賢いコンパイラは未初期化の変数を使ってるよ、と警告
出してくれるんだからそんなに重要視するほどの弊害か?
実行するまで未定義・未初期化の変数使うことが分からない Ruby の方式は明らか
に劣ってると思うが?
■ このスレッドは過去ログ倉庫に格納されています