画像オブジェクトをメソッドに渡す場合、このメソッドで行われた変更は、メソッドが返された後、元のオブジェクトに反映されません。これは、予想される引用セマンティクスから逸脱します。 送信された価値の真実一般的な認知の反対で、オブジェクト自体は直接渡されません。代わりに、それらの値は評価され、メソッドの初期パラメーターとして渡されます。参照タイプの場合、この値は既存のオブジェクトへの参照です。オブジェクトの変更は、発信者に表示されます。
ただし、パラメーターは別のオブジェクトに参照されますが、これはコールメソッドには反映されません。これは、すべてのパラメーターがデフォルトで渡されるためです。
実際の伝達伝送動作を実現するには、パラメータータイプが価値があるか参照タイプであるかを使用する必要があります。これらのキーワードは、パラメーターの値とストレージ位置、パラメーター共有を保証します。したがって、パラメーターの変更は、コールメソッドによって観察されます。
要するに、参照型オブジェクトは元々値に渡されましたが、参照を変更することができ、参照オブジェクトによって行われた変更は呼び出しに表示されます。ただし、新しいオブジェクトの割り当てはパラメーターに割り当てられても、コールバックメソッドは拡大しません。実際の参照伝送動作を実現するには、REFまたはOUTを明示的に使用する必要があります。以上がC#はオブジェクトの渡しをどのように処理しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。