static void ValueAndReferenceTypes() { PointVal a; //PointVal a = new PointVal; a.X = 3; a.Y = 5; PointVal b = a; b.X = 7; b.Y = 10; a.LogValue(); b.LogValue(); Console.WriteLine("after structs"); PointRef c = new PointRef(); c.X = 3; c.Y = 5; PointRef d = c; d.X = 7; d.Y = 10; c.LogValue(); d.LogValue(); }