Предположим, что у меня есть следующие классы в одной сборке
public class ParentClass : IDisposable
{
public ChildClass Child
{
get { return _child; }
}
}
public class ChildClass
{
public ParentClass Parent
{
get { return _parent; }
set { _parent= value; }
}
public ChildClass (ParentClass parent)
{
Parent= parent;
}
}
Исправьте меня, если я ошибаюсь, но это плохой дизайн. Это приведет к утечке памяти или другим непредвиденным проблемам? По-видимому, сборщик мусора способен обрабатывать такие круглые ссылки.
Edit
Что делать, если два класса в конечном итоге привыкают к чему-то другому?
ParentClass objP = new ParentClass ();
ChildClass objC =new ChildClass(objP);
objP.Child = objC;
Мысли, пожалуйста....