Cosa fa l'operatore dello scope ::MyClass/MyModule
in Ruby, qual è il suo scopo?Cosa fa l'operatore :: scope MyClass Ruby?
9
A
risposta
18
Questo fa esplicitamente riferimento a MyClass nell'ambito globale. Se c'è un MyClass nello scope globale, ma anche un MyClass all'interno di SomeModule, facendo riferimento a MyClass dall'interno di SomeModule farà riferimento a MyClass all'interno del modulo, non al MyClass globale. Dire :: MyClass si riferisce esplicitamente a MyClass nell'ambito globale.
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
"scope globale" significa semplicemente che la costante è definita sulla classe Object
. Quindi ::SomeModule
è una scorciatoia per Object::SomeModule
Problemi correlati
- 1. Cosa fa == in Ruby?
- 2. Che cosa fa% {} in Ruby?
- 3. Costante non inizializzata MyClass (NameError) in Ruby
- 4. Cosa fa * :: (due punti asterisco) in Ruby?
- 5. Che cosa fa $ :. push in ruby?
- 6. Jersey @ scope scope
- 7. Cosa fa rb-fsevent?
- 8. Scope vuoto con Ruby on Rails
- 9. Che cosa sta facendo questo costrutto C# e perché? MyClass <TMyClass>: MyClass dove
- 10. cosa non ha scope scope e quando usarlo?
- 11. Cosa fa il metodo 'to_sym' di Ruby on Rails?
- 12. Ruby: cosa fa esattamente il frammento: (num & 1) == 0?
- 13. Cosa fa il sé in ruby su rotaie?
- 14. ruby: cosa fa l'asterisco nella "p * 1..10" significa
- 15. Cosa fa class ClassName <:: OtherClassName in Ruby?
- 16. Cosa fa !! significa in rubino?
- 17. Cosa fa @NonNull su un metodo void?
- 18. Perché self.class === MyClass restituisce false, mentre self.class == MyClass restituisce true?
- 19. Cosa fa?
- 20. Cosa fa [:]?
- 21. Cos'è Boxen e cosa fa?
- 22. Mesi fa in ruby
- 23. cosa fa il metodo tf.nn.lrn()?
- 24. Qual è la differenza tra var t: MyClass = MyClass (o); e var t: MyClass = o come MyClass;
- 25. Ruby: cosa significa $ 1?
- 26. Cosa fa l'operatore | = fa in JavaScript?
- 27. Cosa fa "12345" + 2 fa in C?
- 28. Cosa fa -webkit-text-size-adjust fa?
- 29. Cosa fa aspnet_regiis.exe
- 30. Cosa fa System.Concurrency.AsyncLock?