From: "142QN4969@..." Date: 2007-09-22T01:24:53+09:00 Subject: [ruby-list:44051] Re: スコープについての質問 小原です。 だん様、 返信ありがとうございます。 みなさまの返信を何回か読んでいるうちに、 私は、ruby における 変数と、= 代入操作が、理解できていなかった のではないかと、思えてきました。 a="hello" → a をオブジェクト "hello" の 名札とする a=b → b と言う名札が付いているオブジェクトに 更に a と言う名札を付ける と言う操作だと考えると、いいのではないかと、思えてきたのです。 > def foo(a) # a はオブジェクト "hello" の名札 > a = "bye" # a をオブジェクト "bye" の名札とする > end # > > def bar(a) # a はオブジェクト ["hello"] の名札 > a[0] = "bye" # a[0]をオブジェクト"bye" の名札とする # (ちょっと苦しい) > end > > a = "hello" # a をオブジェクト "hello" の名札とする > foo(a) # 名札 a を引数として foo を呼び出す。 > p a #=> "hello" (名札 a のオブジェクトを表示する > > a = ["hello"] # a をオブジェクト ["hello"] の名札とする 以下 略 これでうまく、つじつまがあうのかどうか、確信はありません。 取り留めのないことを、、、、失礼しました。 以上 よろしく