こんばんは。鈴木教郎です。 > From: WATANABE Hirofumi <eban / os.rim.or.jp> > Date: Mon, 1 Nov 1999 01:09:14 +0900 >> Message-ID: <19991101010750.213788.eban / os.rim.or.jp> > どうも変数を中心に考えているような印象を受けます. たぶんそう考えているのだと思います。最初に変数が指す入れ物があって bar = foo でそれぞれの変数が同じ入れ物を指す。bar に何かを入れると、その変 数が指している入れ物に代入されると考えていました。 # こお言うのをたぶん、オブジェクト指向でなかったと言うことですね。 自分なりにまとめると... foo = "foo" bar = foo ここまでは、foo と bar は、"foo" というオブジェクトをさしている。 ここで "foo" オブジェクトを変化させる(upcase! や chop!)と、foo と bar の指すオブジェクト "foo" 自体が変化するので、変化が foo と bar の両方 に現れる。 # foo.upcase! は、foo を通して "foo" オブジェクトを操作する。 しかし、ここで bar = "bar" とすると bar は、*新たに* "bar" というオブジェクトを指す。よって、foo と bar の指すオブジェクトが異なる。 こおいう事でしょうか。 -- 鈴木教郎 E-Mail: nosuzuki / e-mail.ne.jp