如何在ruby中以哈希形式存储对象?
我对哈希中的对象MyObject有一个哈希:如何在ruby中以哈希形式存储对象?,ruby,object,hash,Ruby,Object,Hash,我对哈希中的对象MyObject有一个哈希: inst = Hash.new(0) inst = {"val1" => MyObject.new(0x18,3,4)} 但当我想得到元素时: puts inst["val1"] 我得到一个错误: MyObject:0x00000002468690 散列是键值对。 在这种情况下,您得到的是给定键(即“val1”)的值,该键是MyObject类的实例。MyObject:0x00000002468690不是错误。这是ruby对对象MyObje
inst = Hash.new(0)
inst = {"val1" => MyObject.new(0x18,3,4)}
但当我想得到元素时:
puts inst["val1"]
我得到一个错误:
MyObject:0x00000002468690
散列是键值对。
在这种情况下,您得到的是给定键(即“val1”)的值,该键是MyObject类的实例。
MyObject:0x00000002468690
不是错误。这是ruby对对象MyObject
的字符串表示,因为它没有实现to_s()
方法来对自身进行字符串化。