Ruby 未初始化常量A::B(名称错误)
这项工作:Ruby 未初始化常量A::B(名称错误),ruby,initialization,constants,nameerror,Ruby,Initialization,Constants,Nameerror,这项工作: class A def m1 b = B.new end end class B end 这失败了——为什么 class A b = B.new end class B end 错误消息“'':未初始化常量A::B(NameError)”被删除。因为在第二个代码中,B=B.new在定义B之前被计算。但是在第一种情况下-似乎B类也没有定义(类似于第二种情况)-但在第一种情况下仍然有效…是的,谢谢。一旦我创建了一个对象和一个被调用的方法m1
class A
def m1
b = B.new
end
end
class B
end
这失败了——为什么
class A
b = B.new
end
class B
end
错误消息“'':未初始化常量A::B(NameError)”被删除。因为在第二个代码中,
B=B.new
在定义B
之前被计算。但是在第一种情况下-似乎B类也没有定义(类似于第二种情况)-但在第一种情况下仍然有效…是的,谢谢。一旦我创建了一个对象和一个被调用的方法m1,我就得到了同样的错误。现在它有意义了:-)