这是一个很难找到的词,因为在大多数情况下,它们在搜索过程中不敏感.我在文档之外找到的最好的是IRB中的测试.
BEGIN{puts x = 10}
10
Run Code Online (Sandbox Code Playgroud) 我已经知道这里有很多关于这个问题的线索,但是没有一个标题像我一样有这个措辞.我希望我们能够清除这一点.
$:.unshift(File.expand_path("../../lib", __FILE__))
Run Code Online (Sandbox Code Playgroud)
你可以在很多Ruby代码中看到这样的东西.无论这是否合适,意见都会有所不同.
我们可以对每个部分进行一些解释吗?真的很重要.我只了解其中一些.
我试图弄清楚为什么以下代码在here-doc字符串eval中不起作用:
script = <<FILE
def i_feel(&block)
block_given? ? "I feel #{ yield } :D" : "I don't know how I feel :/"
end
i_feel
# => "I don't know how I feel :/"
i_feel { 'great' }
# => "I feel great :D"
FILE
puts script
`<main>': no block given (yield) (LocalJumpError)
Run Code Online (Sandbox Code Playgroud)
我知道部分原因是字符串插值.但是我如何让它发挥作用?首先尝试没有here-doc,看看它是否有效?