static int GetCount(BinTreeNode<int> L)
{
int count = 0;
while (L != null)
{
count++;
L = L.GetRight();
}
return count;
}
У меня есть метод GetCount (). Теперь BinTreeNode - это класс, в котором есть члены: right, left и info. по какой-то причине в основной функции
static void Main(string[] args)
{
var t2 = new BinTreeNode<int>(null, 1, new BinTreeNode<int>(null, 2, new BinTreeNode<int>(null, 3, null)));
//Console.WriteLine(TreeLessThanTree(t1, t2));
Console.WriteLine(GetCount(t2));
Console.WriteLine(t2.GetInfo()); // this prints 1
Console.ReadKey();
}
Это странно, поскольку в функции GetCount () значение L (которое передается по ссылке) меняется на ноль.
Почему t2 передается по ссылке? Почему не изменился t2?