Название может быть немного неверным, но, тем не менее, речь идет о Stack & Heap и сборщике мусора.
Мой код:
static void Main(string[] args)
{
MyInt x = new MyInt();
x.MyValue = 3;
MyInt y = new MyInt();
y = x;
y.MyValue = 4;
Console.Read();
}
public class MyInt
{
public int MyValue;
}
Мой вопрос:
Правильно ли я понимаю, что сначала y
был создан с указателем на новый MyInt
в памяти, а затем указатель y
был заменен указателем x
, и теперь y
указывает на тот же объект (правильно ли он называется объектом?), что и x
в памяти?
И что объект y
, который был создан до этого, остался в куче без какого-либо указателя на него? Что он существует в куче, но никто не указывает на этот объект в памяти. И что теперь этот объект подлежит сборщику мусора?
Я правильно понимаю?