Ruby の Proc は return の挙動が異なる特徴がありますか?

1件の回答

回答を書く

1080539

2026-03-19 07:05

+ フォロー

Ruby の Proc は return の挙動が少しクセが

あります。(・´ ○)



Proc の中で return を書くと、その Proc を

呼び出したメソッド全体から抜けてしまうん

です。つまり「呼び出し元ごと終了する」

という動きになります。



これに対して lambda はよりメソッドに近い

振る舞いをしていて、return を書いても

そのラムダの中だけで処理が終わり

呼び出し元のメソッドには影響しません。



この違いがあるため、ちょっとした制御の

仕方で「思ったより早くメソッドが抜けて

しまった」ということが起こりやすいのが

Proc の特徴です。

うったえる有益だ(0シェアするブックマークする

Copyright © 2026 AQ188.com All Rights Reserved.

博識 著作権所有