From: nobu.nakada@... Date: 2002-06-24T23:32:31+09:00 Subject: [ruby-dev:17574] Re: blocks and local variables なかだです。 At Fri, 21 Jun 2002 17:42:27 +0900, Shin-ichiro HARA wrote: > '!' で終わる変数をブロックローカルにするのは? a!=0が代入なのか比較なのかが分かりづらくないでしょうか。 > (5)定義済みローカル変数に対する := は = と同値。 引用が前後しますが、ここでいうローカル変数というのはメソッドス コープ、ブロックローカルでない変数のことでしょうか。 > (3):= がアクセスする定義済みブロックローカル変数は、外で最も近いもの。 個人的には、:=は新しくブロックローカル変数を作らない代入、のほ うがいいように思います。 > x! = 0 > foo { > x! = 1 > x! := 10 > p x! #=> 1 #=> 10 > foo { > foo { > x! := 3 > } > p x! #=> 3 > } > p x! #=> 3 > } > p x! #=> 10 #=> 0 > # x! := -1 #=> NG #=> x! == -1 同じスコープ同じ名前で別のものを指すというのは、あまり嬉しくな いような気がします。 -- --- 僕の前にBugはない。 --- 僕の後ろにBugはできる。 中田 伸悦