範圍操作符在Ruby中做什麼,它的目的是什麼?:: MyClass Ruby scope operator是做什麼的?
9
A
回答
18
這明確引用了全局範圍內的MyClass。如果全局範圍內有MyClass,而且SomeModule內部還有MyClass,則引用SomeModule內部的MyClass將引用模塊內部的MyClass,而不是全局MyClass。 Saying :: MyClass明確引用全局範圍中的MyClass。
class MyClass
def self.something
puts "Global MyClass"
end
end
module SomeModule
class MyClass
def self.something
puts "SomeModule::MyClass"
end
end
print "From the module: "
MyClass.something
print "Explicitly using global scope: "
::MyClass.something
end
print "From the global scope: "
MyClass.something
print "Explicitly using module scope: "
SomeModule::MyClass.something
2
「全局範圍」只是表示在Object
類中定義的常量。所以::SomeModule
是Object::SomeModule
相關問題
- 1. 做什麼:scope「provided」是什麼意思?
- 2. python operator = - 做什麼?
- 3. C++中的operator()()是做什麼的?
- 4. 爲什麼需要用std :: string :: operator +()顯式調用Myclass :: operator string()?
- 5. 什麼是C?:operator的Ruby等價物?
- 6. void Classname :: operator()(){....}是做什麼用的?
- 7. C++ new operator scope
- 8. ruby_executable_hooks是做什麼的?
- 9. 爲什麼要做$ scope。$ apply()?
- 10. 什麼是Scope Creep?
- 11. 方法定義中的operator +做什麼?
- 12. 使用myclass :: operator [](int i)
- 13. 這是什麼C#構造在做什麼,爲什麼? MyClass <TMyClass>:MyClass其中
- 14. 什麼是「:: operator new」和「:: operator delete」?
- 15. AngularJS中的$ scope是什麼?
- 16. operator()重載時,'const'做什麼?
- 17. 這個operator()語法做了什麼?
- 18. Ruby HTTP的read_status_line是做什麼的?
- 19. 什麼新MyClass的和新MyClass的()
- 20. C++:這個operator ^是什麼?
- 21. Ruby中send()是做什麼的?
- 22. Ruby on Rails'method'to_sym'是做什麼的?
- 23. 爲什麼MyClass .__ class__返回的值不是MyClass().__ class__?
- 24. Ruby的Array#shift做什麼?
- 25. ruby operator「=〜」
- 26. 什麼「?」做?什麼是__FILE__?
- 27. 在Ruby中什麼是「等於大於」operator =>?
- 28. 什麼是做%,而在Ruby中
- 29. :: operator new []()與:: operator new()不同的方式是什麼?
- 30. 什麼是is-operator的用法