我在类名之前看过Rails中使用双冒号。
例如:
require ::File.expand_path('../config/environment', __FILE__)
我知道Module::Class::Constant
的含义,但是::Class
?
答案 0 :(得分:64)
这意味着您从顶级命名空间引用常量File
。这在以下情况下有意义:
class MyClass #1
end
module MyNameSpace
class MyClass #2
end
def foo # Creates an instance of MyClass #1
::MyClass.new # If I left out the ::, it would refer to
# MyNameSpace::MyClass instead.
end
end