ラムダ式が Ref パラメータを禁止する理由
ラムダ式は、周囲のコンテキストから変数をキャプチャするという利便性を提供します。ただし、ラムダ式内で ref パラメータを使用すると、両方の意図した動作と矛盾する複雑さが生じます。
Ref パラメータを使用すると、その名前が示すように、渡された変数の参照を別の値に割り当てることができ、拡張される可能性があります。その有効期間は現在のメソッドの範囲を超えます。この動作は、ラムダ式の予想される短命な性質と矛盾します。
ラムダ式では、周囲のコンテキストから取得した変数を変更することもできるため、呼び出しコードで予期しない副作用が発生する可能性があります。この特性は、参照への変更がメソッドと呼び出し元の両方に確実に反映されるようにする ref パラメーターの基本的な概念と矛盾します。
ラムダ式と ref パラメーターの間の本質的な非互換性は、それらの対照的な存続期間と、望ましくない副作用の可能性。明確さを維持し、予期しない動作を回避するために、ラムダ式では意図的に ref パラメーターの使用を禁止しています。
以上がラムダ式が Ref パラメータをサポートしないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。