0
我想了解與多個模塊紅寶石:多個模塊聲明
一段代碼module a; module b; module c;
def foo
#something
end
end
end
end
那麼究竟是什麼上面的代碼是什麼意思?它是否像所有3個模塊都有foo,我可以訪問a.foo或b.foo等。?
我想了解與多個模塊紅寶石:多個模塊聲明
一段代碼module a; module b; module c;
def foo
#something
end
end
end
end
那麼究竟是什麼上面的代碼是什麼意思?它是否像所有3個模塊都有foo,我可以訪問a.foo或b.foo等。?
我可以看到這將如何混淆。這是非常糟糕的佈局。將模塊聲明拆分爲單獨的行,它更有意義。如果寫在一行上,Ruby允許用分號分隔一些東西......這在這裏被濫用並導致混淆。
代碼擴展到這一點,當佈局正確:
module a
module b
module c
def foo
#something
end
end
end
end
使用分號寫在一行中定義的其他例子包括:
class Foo < Bar; def zip; if @terrifying; puts "Yes"; else; puts "No"; end; end; end
你或許可以看到爲什麼我說這個寫得不好。此外,模塊名稱應以大寫字母開頭。
謝謝,我想用縮進代碼而不是一個襯墊代碼更好(對於初學者)。 – Pradhan
你從哪裏找到這段代碼? –
'SyntaxError:類/模塊名稱必須爲CONSTANT' –
請縮進您的代碼,並按照任何ruby模塊,課程教程。 –