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