以下是RubyMine 3.1中的一个小屏幕截图。我刚开始学习Ruby。这里的代码来自atomicobject.com上的Presenter-First MVP C#代码生成器。
我正在使用这个项目和一本书来学习Ruby。 puts
的{{3}}表示它至少需要一个参数。然而,这个代码似乎“有点合法”,原因有两个:
puts
w / o参数会创建换行符。 然而,这样做是不好的做法(因此RubyMine警告)?我正在查看的代码来自2006年。如果重要的话,我正在使用Ruby 1.9.2运行它。
答案 0 :(得分:3)
这很好,因为puts
为第一个参数提供了“默认”值:
def puts(obj='', *arg)
对于RubyMine,它不会显示任何错误。您是否可以在代码中的其他位置定义方法puts
?您可以 cmd +点击它,以获得定义。
无论如何,如果您能够在一个干净的新项目中重现问题,您可以自由地向JetBrains提交错误报告。
答案 1 :(得分:1)
不,在源代码和输出中创建物理换行符会很有帮助,就像你已经看到的那样,puts
完全能够接受零参数。
就个人而言,如果我创建一个多行输出,我更喜欢使用here-doc syntax。