代码之家  ›  专栏  ›  技术社区  ›  nonopolarity

为什么在Ruby中使用DBM时,db[1]=2正常,但print db[1]会出错?

  •  1
  • nonopolarity  · 技术社区  · 15 年前

    在Ruby上,使用DBM时

    require "dbm"
    
    db = DBM.open("somedata")
    db[1] = 2   # ok
    p db[1]     # gives error
    

    是否有人知道db[1]=2正常,但打印出db[1]会出错?

    如果它要求db[“1”]有效,那么为什么它不适用于两种情况,而只适用于一种情况?

    1 回复  |  直到 14 年前
        1
  •  2
  •   raubarede    15 年前

    dbm将键和值转换为字符串,因此:

    P dB [〔1〕]

    “2”