From: Yac Date: 2004-01-14T00:56:26+09:00 Subject: [ruby-list:39040] 内包オブジェクトがnilになったら自分もnilになるには? 岡といいます。こんにちは。 あるオブジェクトを内包するオブジェクトがあります。 内包しているオブジェクトがnilになったら、自分もnilになってほしいのです が、どのように書いたらいいでしょうか。 コードで示すと、こんな感じです。 Test#removeで@raw_obj をnilにした後は、testが指すオブジェクトがnilになっ て欲しいのです。 自分ではいろいろ調べたつもりなのですが、見つけられませんでした。 class Test def initialize() @raw_obj = {} end def [](item_name) @raw_obj[item_name] end def []=(item_name, value) @raw_obj[item_name] = value end def remove @raw_obj = nil # この後、自分もnilになりたい # self = nil と書いたら怒られた end end test = Test.new test["name"] = "名前" p test["name"] # => "名前" test.remove p test # これをnilにしたい 実際にやりたいことは、@raw_objにExcelのワークシートを指すWIN32OLEオブ ジェクトを入れておき、 remove()でワークシートを削除した後は、自分もnilになりたいわけです。 /OKA