0
C:\>irb
irb(main):001:0> s = Proc.new { puts "Hello" }
=> #<Proc:0x04051780@(irb):1>
irb(main):002:0> s.call
Hello
=> nil

ゼロの原因は何ですか?

ruby 1.8.6 (2008-08-11 patchlevel 287) [i386-mswin32]
4

1 に答える 1

3

s@sepp2k がコメントで指摘しているように、戻り値をputs返さないので、proc の最後のステートメントであるnilため、自動的に戻り値になります。nil

proc を に割り当てた後の不可解な出力と同様に、最後のステートメントの戻り値として端末に出力されるだけですs

于 2009-09-16T16:54:22.947 に答える