Ближайший поток, который я смог найти, был этот, но там сценарий другой - вызываемый базовый конструктор является конструктором по умолчанию. Здесь мне нужно указать, какой параметр я хочу передать.
Допустим, у нас есть следующий сценарий:
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 (технически я мог бы обернуть всю логику в функцию, уменьшающую копирование-вставку / улучшающую ремонтопригодность, поскольку в конце все перегрузки будут полагаться на один и тот же код. Буду следовать этому, если другого решения нет).
Я думал, что могу вызвать сначала перегрузку 1-го конструктора A, а затем базовый. Но, похоже, не могу.
Какой здесь подход?