这个问题有很多类似的问题,但我认为没有人真正得到我需要的答案。
根据我的感知,任何前面有#
的内容都会成为评论,如:
puts "not a comment"
# puts "in a comment"
但是当它进行字符串插值时,你可以说:
puts "time is #{Time.now}"
且#
处的#{Time.now}
未开始评论其后写的内容。
怎么回事?
答案 0 :(得分:3)
这种情况下的#符号用引号括起来,并作为字符串的一部分进行解析,而不是注释。
答案 1 :(得分:3)
是的,@ osama说。但是,如果你在Ruby代码块中添加注释,它将不会注释掉整个行的其余部分。所以,
puts "'#{'oof'#.reverse},' he said."
wil print“'oof,'他说,”而
puts "'#{'oof'.reverse},' he said."
导致“'foo,”他说,“。