1
コードを書くときに、必要に応じて成功したbool値とコードのoutパラメーターを返すと便利な場合があります。または、TryParse
関数とそれぞれの出力パラメータを使用することもできます。メソッド呼び出しのoutパラメーターをインライン化する
本の最近の例では、次のメソッドシグネチャた:ここ
private State GetTheStateOfClass1(Class1 o, out double confidence)
私はClass1
オブジェクトの状態とオブジェクトがその状態を持っていること、それに対応する自信を見つける方法があります。
そうのようなClass2
の新しいインスタンスを作成する場合は、この方法が使用されている:私の理解に
Class2 c2 = new Class2(GetTheStateOfClass1(o, out double confidence), confidence, ...);
私は 'Tuple'または 'StateWithConfidence'を提案します。 'out'パラメータはすでにmehですが、あなたがそれらを両方とも設定され使用されている式に含めると、それは二倍です。 'new Class2(o.GetStateWithConfidence())'(これは必要に応じて拡張メソッドとすることができます)、あるいは単に 'new Class2(o)'を呼び出すだけです。もちろん、主観的です。 –
C#7では、これが可能になるはずです(あなたが提案する構文とまったく同じです)(https://blogs.msdn.microsoft.com/dotnet/2016/08/24/whats-new-in-csharp-7-0 /)。最終的な例が最終的に(宣言と同じステートメント内のインラインパラメータを使用して)コンパイルされるかどうかはまだ未解決の問題です。 –
@JeroenMostertああ、それはまだ確認されていますか?それが確認されれば答えとして投稿できますか? – TheLethalCoder