繁体   English   中英

Ruby:未初始化的常量

[英]Ruby : uninitialized constant

我不知道我在这里缺少什么,无法在ruby中的另一个函数中调用一个函数

例:

def test()
  puts WB_A
end

# Top level components
def WB_A
  {
    'A'            => 'Apple',
  }
end

test()

结果是:

main.rb:2:in test': uninitialized constant WB_A (NameError) from main.rb:12:intest': uninitialized constant WB_A (NameError) from main.rb:12:in

请让我知道怎么了

Ruby用户指南中

常量的名称以大写字母开头。
最多应为其分配一个值。

只需将其更改为小写即可:

def test()
  puts wb_a
end

# Top level components
def wb_a
  {
    'A'            => 'Apple',
  }
end

test()
#=> {"A"=>"Apple"}

或者,如果可以的话, wB_A也可以,但不建议使用,请查看下面的tadman注释。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM