最も近いスレッドはthis oneでしたが、シナリオが異なります - 呼び出される基本コンストラクタがデフォルトのものです。ここでは、渡すパラメータを指定する必要があります。このオーバーロードとベースオーバーロードの両方をコンストラクタで呼び出すことはできますか?
は、私たちが次のシナリオを持っていると言う:
public class Base
{
public string Str;
public Base(string s)
{
Str = s;
}
}
public class A : Base
{
public string Str2;
public A(string str2)
: base(str2)
{
Str2 = str2;
}
public A(string str2, string str)
: base(str)
{
Str2 = str2;
}
}
私はAの第二コンストラクタのオーバーロードで同じロジックを繰り返さないようにしたい(技術的に私はコピー&ペースト/保守性の向上を削減する機能にすべてのロジックをラップすることができ、最後にすべてのオーバーロードが同じコードに依存します。他に解決策がない場合はこれに従います)。
私は最初のAの1番目のコンストラクタをオーバーロードし、後で1番目のコンストラクタを呼び出すことができると考えました。しかし、私はできないようです。
ここでのアプローチは何ですか?