Как правильно наследоваться с вложенным классом? - C#
Формулировка задачи:
Приветствую.
Есть класс, точнее 2. Один вложен в другой.
Нужно из этого класса сделать другой класс, который бы в себе содержал всё что содержит этот, но сверх того в MatreshkaUnit нужно добавить ещё поля. (Поля типа экземпляров других классов, если это важно.) Вроде как это наследование, но как его тут реализовать, когда классы вложенные?
class MatreshkaArray
{
private List<MatreshkaUnit> UnitsPr;
// private Matreshka SavedCopy;
public MatreshkaUnit this[int index]
{
get { return this.UnitsPr[index]; }
}
public MatreshkaArray()//Обычный конструктор
{
this.UnitsPr = new List<MatreshkaUnit>();
}
public void Add()
{
this.UnitsPr.Add(new MatreshkaUnit(this));
}
public void Remove(int index)
{
if ((index >= 0) && (index < this.UnitsPr.Count)) this.UnitsPr.RemoveAt(index);
}
public class MatreshkaUnit
{
private MatreshkaArray Container;
public MatreshkaUnit(MatreshkaArray container)
{
this.Container = container;
}
}
}Решение задачи: «Как правильно наследоваться с вложенным классом?»
textual
Листинг программы
MatreshkaArray2 m2 = new MatreshkaArray2(); m2.Add(); m2[0].Age //Можно без кастов сразу иметь доступ.