0
A
回答
1
由于
module M1
puts "self = #{self}"
module self::GenName
puts Module.nesting
def self.gen_name
end
end
end
# self = M1
# M1::GenName
# M1
我们看到M1
相同
module M1
module M1::GenName
puts Module.nesting
def self.gen_name
end
end
end
# M1::GenName
# M1
应该不会感到惊讶。 GenName
被引用(举例来说)
M1::GenName.methods(false)
#=> [:gen_name]
在这两种情况下
。如果我们不是写
module M2
module GenName
puts Module.nesting
def self.gen_name
end
end
end
# M2::GenName
# M2
然后
M2::GenName.methods(false)
#=> [:gen_name]
这表明红宝石引用GenName
在这两种情况下相同的方式。我相信如果加入self.
没有什么区别,但我也认为上述内容缺乏证据。
相关问题
- 1. JavaScript中的Module Loader和Module Bundler有什么区别?
- 2. int [] x;有什么区别?和int x [];?
- 3. “x!”有什么区别和“x”?
- 4. (void **)&x和(void *)x有什么区别?
- 5. 'x'和'x'有什么区别?
- 6. '&self'和'&'a self'有什么区别?
- 7. `import module`和`from package import module`之间的区别
- 8. 在GHCi中,':module'和'import'有什么区别?
- 9. 在SNMP MIB中,“MODULE-IDENTITY”和“OBJECT IDENTIFIER”有什么区别?
- 10. PowerShell中的Add-PSSnapin和Import-Module有什么区别?
- 11. float x []与float [] x有什么区别?
- 12. $('x> y'),$('y','x')和$('x y')之间有什么区别?
- 13. 对于1-D`X`,`X [n]`和`X [...,n]`有什么区别?
- 14. 是什么?MODULE
- 15. H.264和x.264有什么区别?
- 16. C++中0x和'\ x'有什么区别?
- 17. Python:“import X”和“from X import *”有什么区别?
- 18. Add-PsSnapIn和Import-Module之间的区别是什么
- 19. llvm :: module :: setDataLayout和llvm :: module :: setHostTriple
- 20. Class#define_method和Module#define_method之间的区别
- 21. Module(__ name__)做什么?
- 22. Python中的if bool(x)`和if x`有什么区别吗?
- 23. 过滤器(| x |)和过滤器(|&x |)之间有什么区别?
- 24. ruby中`| x,y |`和`| x; y = 0 |`有什么区别?
- 25. Y〜X和Y〜X + 1有什么区别?
- 26. OpenGL GLSL中的atan(y/x)和atan2(y,x)有什么区别
- 27. 在python 2.7“x!= y”和“not x == y”之间有什么区别?
- 28. python3有什么区别? <x>和python3。 <x> m
- 29. Func <x,y>和Method(x,y)有什么区别?
- 30. C++:int * x [5]和int(* x)[5]之间有什么区别?
这是真的。添加self ::'几乎总是毫无意义的,而且它严格要求的场合如此晦涩难懂,我不确定我能想到它。 – tadman