From: pegacorn Date: 2007-04-12T13:40:39+09:00 Subject: [ruby-list:43426] Re: 深いコピーの作成 (was: Re: オブジェクトのインスタンス変数名の取得) 07/04/12 に NAKAMURA, Hiroshi さんは書きました: > ちなみに、"深い"コピーというのは、marshal -> unmarshalということだと思い > ます。marshalでコケるものは、"深い"コピーが(本質的に)できないものでは > ありませんか。 > > 条件限定で、ほどほどの深さのものが欲しい、ということかもしれませんが。 Marshal.dump -> Marshal.load には、Object#clone にはない制限があるので、 clone と同等のコピーが可能な深いコピーを作成するメソッドを作ろうとしています。 # Ruby で実際に必要になったわけではないのですが、 # 以前 C++ で深いコピーを作成するメソッドを書く必要があって、 # クラス毎にメソッドを定義するのは面倒だなーと思ったのですが、 # Ruby だとクラス毎にメソッドを定義せずに作れるのではないかと # 思って、作ってみています。 -- pegacorn