문제

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

NIL의 원인은 무엇입니까?

ruby 1.8.6 (2008-08-11 patchlevel 287) [i386-mswin32]
도움이 되었습니까?

해결책

s 값을 반환하지 않으며 @sepp2k가 주석에서 지적한 것처럼 puts 보고 nil, 그래서 nil Proc의 마지막 진술이므로 자동으로 반환 값이됩니다.

Proc를 할당 한 후 해당 암호 출력과 유사하게 마지막 문의 반환 값으로 터미널에 인쇄됩니다. s.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top