From: Fujimaru Hiroyasu Date: 2002-07-05T13:17:09+09:00 Subject: [ruby-list:35531] Re: [ 質問 ] オブジェクト名を得る方法  ふじまるです。 > ソース関係なしにしても、 > > ary = ["a","b"] > p ary[0].id # => 84004824 > > の場合の id が 84004824 のオブジェクトの変数名って何? という事に > なりますし、さらに複雑なパターンでは > > ary = Array::new(2,"a") > p [ary[0].id,ary[1].id] # => [84004740, 84004740] > > の場合の id が 84004740 のオブジェクトの変数名って何? という事に > なるんじゃないかなと思います。 > > > 変数名が必要なオブジェクト o があるのであれば、 > > eval("id#{o.id} = o") > > みたいなのをどこかに入れて、84004824 のオブジェクトの変数名が > id84004824 になるようにするとかした方が良いのではないでしょうか。 > 上記の方法は全然美しくないですけど。  既に諦めた後ではありますが、上記の様な場合(というか、そもそも無名のオブ ジェクト)に関しては無視するつもりでした。  id→変数名の時にエラーが返るので構わないと思ってたんですが、言われてみる とそういう応答も美しくないですね…。 >変数名が必要なオブジェクト o があるのであれば、 > > eval("id#{o.id} = o") > >みたいなのをどこかに入れて、84004824 のオブジェクトの変数名が >id84004824 になるようにするとかした方が良いのではないでしょうか。 >上記の方法は全然美しくないですけど。  今回考えていた事には向かないのですが、何かの時に使えるかも知れません。 覚えておきます、ありがとうございました。 ================= 藤丸博康 f-hiro@eweb.co.jp