我知道这段代码可能不太正确:
def print_string(&str)
puts str
end
print_string{"Abder-Rahman"}
Run Code Online (Sandbox Code Playgroud)
但是,当我运行它时,这就是我得到的:
#<Proc:0x03e25d98@r.rb:5>
Run Code Online (Sandbox Code Playgroud)
这个输出是什么?
小智 5
这是Proc对象的默认字符串表示形式.因为"Abder-Rahman"在括号中,Ruby认为你正在定义一个块.你的意思是把str.call你的函数定义放在里面吗?这应该调用您的块并返回您在其中定义的字符串表达式.
| 归档时间: |
|
| 查看次数: |
191 次 |
| 最近记录: |