为什么红宝石中的.object_id有时会返回正数或负数?

时间:2016-01-17 05:39:32

标签: ruby

我在Ruby中使用nil对象( irb ):

nil.object_id # => 4

但是对于一个字符串,我得到了负面结果:

"abc".object_id # => -570954278
"abc".object_id # => -570956148

我对这个消极部分感到困惑。这是正确的还是我做了一些奇怪的事?

我的红宝石是:

ruby 2.3.0p0 (2015-12-25 revision 53290) [i686-linux]

1 个答案:

答案 0 :(得分:0)

有效数字是有符号整数,其中一位用于符号,其余用于数据。有关其实施的一些细节的讨论,请参阅here,提及正面和负面存储。

但要做空,不,没有什么可担心的。