Ruby:我可以通过它的ID获取一个实例吗?

Ruby:我可以通过它的ID获取一个实例吗?,ruby,Ruby,在Ruby中,如果我将对象实例的ID作为字符串,例如 “#”,我可以通过此ID获取实例本身吗 # what I want meeting = SOME_MAGIC_HERE "#<Meeting:0x4531860>" # and then I can handle the meeting itself meeting.name # => 'BLABLABLA' #我想要什么 会议=这里有些神奇的东西“#” #然后我就可以自己处理会议了 meeting.name#=>“bla

在Ruby中,如果我将对象实例的ID作为字符串,例如
“#”
,我可以通过此ID获取实例本身吗

# what I want
meeting = SOME_MAGIC_HERE "#<Meeting:0x4531860>"
# and then I can handle the meeting itself
meeting.name # => 'BLABLABLA'
#我想要什么
会议=这里有些神奇的东西“#”
#然后我就可以自己处理会议了
meeting.name#=>“blabla”

太棒了。只有一样东西“0x4531860”看起来像对象的内存地址?如果是,它在一段时间后(一旦内存空间被使用)是否会变得无效?@sahildhankhar它不是内存地址。是的,如果对象是垃圾收集的,那么它将是无效的。在这种情况下,没有任何方法可以引用该对象,因为它会消失。它不是复制品,除非您认为从检查中显示的ID到对象ID的转换是微不足道的。
meeting = ObjectSpace._id2ref(0x4531860 >> 1)