Назад к вопросам
JuniorТеорияЧасто
Что выведет программа?
var a = new House("red");
House b = a;
var c = new House("red");
b.Color = "blue";
Console.WriteLine(a.Color + " " + c.Color);
class House
{
public string Color { get; set; }
public House(string color) => Color = color;
}blue red
- Ждать
red red:House b = a;копирует ссылку, а не дом, поэтому изменение черезbвидно черезa. - Считать два красных дома одним домом: каждый
newстроит отдельный объект, и покраска домаaне трогаетc.
- Что напечатает программа, если
bполучит свой дом черезnew? - Что даст
a == bпослеHouse b = a;и почему?