using System;
var p1 = new Point1 { X = 1, Y = 2};
//p1 is (1, 2)
Console.WriteLine($"p1 is ({p1.X}, {p1.Y})");
var p2 = new Point1();
//p2 is (0, 0)
Console.WriteLine($"p2 is ({p2.X}, {p2.Y})");
//in version 10:
var p3 = p2 with { X = 5 };
//p3 is (5, 0)
Console.WriteLine($"p3 is ({p3.X}, {p3.Y})");
Point1 p4;
//var x4 = p4.x; //<- Error
var p5 = new Point2(1, 2);
//p5 is Point2 { x = 1, y = 2 }
Console.WriteLine("p5 is " + p5);
//before:
struct Point1 {
public int X, Y;
}
//in version 9:
record Point2(int X, int Y);