我目前正在尝试为新应用程序创建引擎。
设计非常复杂,我真的需要一种方法来创建引用或指针,或者用什么方式来远程修改和访问数据。数据必须保存在一个地方,不得重复。
有没有办法通过引用获取对象? 例如,我可以使用他的object_id来获取类的实例吗?
感谢您的帮助;)
答案 0 :(得分:1)
以下内容应演示如何获取对象的引用并取消引用它:
s = "I am a string" #=> "I am a string"
r = ObjectSpace._id2ref(s.object_id) #=> "I am a string"
r == s #=> true
您可以查看Object和ObjectSpace的文档。
答案 1 :(得分:0)
不确定您想要实现的目标。 Ruby已经使用了对所有自定义对象的引用。
您可能需要查看delegate
库。
require 'delegate'
obj = "foo"
ptr = SimpleDelegator.new(obj)
ptr.upcase # => "FOO"
other_obj = "bar"
ptr.__setobj__(other_obj) # make ptr point to another object