2009-09-16 3 views

답변

3

연산자 & 연산자는 Proc를 블록으로 변환하므로 블록이있는 인수가 하나 인 메서드 (yield이라고 함)가됩니다. &에서 벗어나 Proc를 직접 통과하면 오류가 발생했을 것입니다.

3

&s을 수행하면 one_arg에 Proc s이 블록으로 전달되기를 바라고 있습니다 (잘못된 경우 제발 수정하십시오). 동등한 작문은

one_arg(5) do |x| 
    x *2 
end 

일 것입니다. 여기에 관해서는 약간의 질문이 있습니다. August Lilleaas은 Ruby의 모든 광기의 복잡함에 대해 꽤 좋은 write up을 가지고 있습니다.

관련 문제