我刚刚在 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/>