outパラメータを使用するメソッド呼び出し時等に、利用しない部分に「_(アンダースコア)」を記述することで、対象値を書き捨てすることができます。
ただし、「_(アンダースコア)」自体は変数として宣言可能であるため、左記を変数宣言していた場合はその限りではありません。
値の破棄を確認するサンプルソースは以下のようになります。
static void Main(string[] args)
{
// 値の破棄(aのみ値を取得する)
int a = 0;
Test001(out a, out _);
Console.WriteLine(a);
}
/// <summary>
/// 確認用メソッド(out)
/// </summary>
/// <param name="lhs">設定用変数1</param>
/// <param name="rhs">設定用変数2</param>
private static void Test001(out int lhs, out int rhs)
{
// 値を変数に対して設定する。
lhs = 1;
rhs = 2;
}
上記ソースでは、Test001メソッドで設定される「lhs」の値のみ取得し、「rhs」は破棄しています。