最近、友人と Ruby の について話し合っていましたProc
。いくつかの方法のいずれかでa を呼び出すことができProc
ます。1 つの方法は、次のように呼び出すことProc.call
です。
p = Proc.new { |x| "hello, #{x}" }
p.call "Bob"
=> "hello, Bob"
もう 1 つは中括弧を使用することですProc.[]
。
p ["Bob"]
=> "hello, Bob"
ここに潜在的な優先順位の問題がありますか、またはこれら 2 つのステートメントは完全に交換可能ですか? そうでない場合、異なる結果が得られるコンテキストの例を提供できますか?