之间有什么区别
module MyModule
module MySubModule
class MySubModuleClass
...
end
end
end
和
module MyModule
class MySubModule::MySubModuleClass
...
end
end
在Ruby中?
答案 0 :(得分:1)
在第二个示例中,您定义的是class
,第一个示例是module
,如果MySubModule::MySubModuleClass
不存在,则无法使用语法MySubModule
。所以你必须先定义它。
答案 1 :(得分:1)
第二种情况不起作用,除非“MySubModule”已在别处定义......
第二种情况不是“MySubModule”的正确定义,如果你没有在其他地方定义MySubModule会导致错误
NameError: uninitialized constant MyModule::MySubModule
from (irb):2:in `<module:MyModule>'