.NET の Ref パラメーターと out パラメーター: いつ使用するか?
.NET の ref
および out
パラメーターを使用すると、変数を参照によって渡すことができ、関数が呼び出し側メソッド内の変数の値を直接変更できるようになります。これらには類似点がありますが、考慮すべき重要な違いがあります。
参照パラメータ
出力パラメータ
コード例
Foo()
に渡された整数を変更する関数を考えてみましょう:
<code class="language-csharp">void Foo(ref int x) { x++; }</code>
ref
引数を使用して初期化されていない変数を Foo()
に渡すと、参照を変更する前に値を設定する必要があるため、エラーが発生します。
<code class="language-csharp">int y; // 未初始化 Foo(ref y); // 错误:调用方法前应初始化 y</code>
一方、out
を使用すると、関数は、指定されていなくても新しい変数を作成して出力できます。
<code class="language-csharp">Foo(out y); // 创建一个新变量并将其赋值给 y Console.WriteLine(y); // 输出:1(y 已由 Foo() 初始化)</code>
いつ使用するか
以上が.NET の Ref パラメーターと Out パラメーター: それぞれをいつ使用する必要がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。