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模块,课程教程。 –