From: matz@... (Yukihiro Matsumoto) Date: 1996-03-04T17:56:08+09:00 Subject: [ruby-list:238] Re: print ¤ˤĤ¤¤Æ まつもと ゆきひろ@トヨタケーラムです. In message "[ruby-list:237] print について" on 96/03/04, Shigeru Gougi writes: |ごうぎ@TCIです。 |で、新しくクラスを、例えば次のように | |ruby> class Foo |ruby> def initialize() |ruby> @a=10 |ruby> end |ruby> end |と定義して、 | |これを |b=Foo.new |print b |とやって表示することは、これだけでは、当然ですが許してないよ |うですが、あるバーチャルメソッドを再定義すると可能になるので |しょうか? つまり,「print b」で「10」と表示されて欲しいんでしょうか? それなら,表示のための文字列化はto_sというメソッドで行われて います.これを再定義するとprintの表示が変わります. ruby> class Foo ruby| def initialize() ruby| @a=10 ruby| end ruby| def to_s ruby| @a.to_s ruby| end ruby| end Foo ruby> b = Foo.new # ruby> print b, "\n" 10 で,いかがでしょう. まつもと ゆきひろ /:|)