私はJag ReeghalのブログでThis Articleを読んでいました。彼が示唆していたことは、実際にはオブジェクトイニシャライザを使用することと同じではないようでした。それから、私は本当に分かっていないことに気付きました。イニシャライザがスローするとオブジェクトが構築されますか?
オブジェクト初期化子を使用してオブジェクトが構築され、それらの初期化子の1つがスローされます(おそらくNull参照例外)...実際に構築されるオブジェクトですか?これは基本的にコンストラクタにスローされる例外のようなものですか?オブジェクトが完全に構築され、初期化されていますか?
異なるものの、結果はコンストラクタが同じである場合と同じです。だから、Jagの勧告が本当に同じではないという私の考えは正しい。 –
結果はほとんど同じです。例外の後にメモリに残っているものに違いがあるかもしれません。 JagはReSharperが10個のプロパティにイニシャライザの提案を制限することを推奨しています。そうしないと、コードの1行で多くのことが起こっているとデバッグするのが難しくなります。 –