【发布时间】:2012-04-10 05:49:54
【问题描述】:
为什么当我将常量分配给变量并对其进行更新时,常量被更新为?是预期的行为还是错误?
ruby-1.9.3-p0 :001 > A = { :test => '123' }
=> {:test=>"123"}
ruby-1.9.3-p0 :002 > b = A
=> {:test=>"123"}
ruby-1.9.3-p0 :003 > b[:test] = '456'
=> "456"
ruby-1.9.3-p0 :004 > A
=> {:test=>"456"}
【问题讨论】:
-
请注意,这也表明 Ruby 中的“常量”实际上并未强制为常量。