相关疑难解决方法(0)

如何解冻Ruby中的对象?

在Ruby中,有Object#freeze阻止进一步修改对象:

class Kingdom
  attr_accessor :weather_conditions
end

arendelle = Kingdom.new
arendelle.frozen? # => false
arendelle.weather_conditions = 'in deep, deep, deep, deep snow'
arendelle.freeze
arendelle.frozen? # => true
arendelle.weather_conditions = 'sun is shining'
  # !> RuntimeError: can't modify frozen Kingdom

script = 'Do you want to build a snowman?'.freeze
script[/snowman/] = 'castle of ice'
  # !> RuntimeError: can't modify frozen String
Run Code Online (Sandbox Code Playgroud)

但是,没有Object#unfreeze.有没有办法解冻冻结的王国?

ruby

35
推荐指数
3
解决办法
1万
查看次数

标签 统计

ruby ×1