0

irb で次の手順をテストしたところ、奇妙な結果が得られました。

require 'rubygems'
require 'rexml/document'  
include REXML

e1=Element.new("E1")
e2=Element.new("E2")
e1.add_element(e2)

e1Dup=e1.dup
puts e1
puts e1Dup

e1.delete_element(e1.elements[1])
puts e1
puts e1Dup

e1 の変更のみが必要ですが、結果は両方の要素が変更されたことを示しています。これはどのように起こりますか?結果は以下のとおりです。

<E1><E2/></E1>
<E1><E2/></E1>
<E1/>
<E1/>
4

1 に答える 1