Здравствуйте. Я не знаю, почему в моей реализации сеттер вызывается более одного раза или как я могу предотвратить это?
class Node<T> {
public T _value { get; set; }
public Node<T> _left
{
set
{ System.Console.WriteLine("setter called");_left = value; }
}
public Node<T> _right
{
set
{ System.Console.WriteLine("setter called"); _right = value; }
}
public Node(T value){
_value = value;
}
}
class Program
{
static void Main(string[] args)
{
Node<int> a = new Node<int>(1);
Node<int> b = new Node<int>(3);
a._left = b;
System.Console.ReadKey();
}
}
Почему сеттер снова вызывается внутри самого сеттера?Я могу предотвратить эту проблему, написав метод, который устанавливает узел, но я хотел бы знать, как это делается установщиками геттеров C # ...
Кстати, в результате получается исключение StackOverflow