简体   繁体   English

未初始化的常量A :: B(NameError)

[英]uninitialized constant A::B (NameError)

This works: 这有效:

class A
    def m1
         b = B.new
    end
end

class B
end

This fails - why? 这失败了-为什么?

class A
   b = B.new
end

class B
end

Error message "'': uninitialized constant A::B (NameError)" is rased. 错误消息“'':未初始化的常量A :: B(NameError)”被删除。

因为在第二个代码中, b = B.new是在定义B之前求值的。

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

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