メソッドの戻り値を引数で受け取るには、outキーワードを使用します。
構文
out引数を持つメソッド構文
メソッド名([out 型 変数名] ...)
{
//処理
}
サンプル
例)第1引数値を2倍・3倍した値を、引数2、引数3に返すメソッド
public void Multi23(int x, out int res1, out int res2)
{
res1 = x * 2;
res2 = x * 3;
}
上のメソッドは、以下のように実行できます。
int a, b;
Multi23(3, out a, out b);
Console.WriteLine(a);
Console.WriteLine(b);
呼び出し側にもoutの指定が必要な事がポイントです。
結果
6
9
備考
- outキーワードは、1メソッド内に複数定義できます。
- 呼び出し側にもoutキーワードの指定が必要です。
- C#では戻り値に複数の値を返すこともできます。詳細は以下の記事をご覧ください。
→ [C#] メソッドの戻り値に複数の値を返す