Tôi chỉ nhận thấy rằng sau đây là có thể trong C# viết bằng Visual Studio 2015, nhưng tôi chưa bao giờ thấy nó trước:Cú pháp khởi tạo đối tượng C# 6 mới?
public class X
{
public int A { get; set; }
public Y B { get; set; }
}
public class Y
{
public int C {get; set; }
}
public void Foo()
{
var x = new X { A = 1, B = { C = 3 } };
}
Kỳ vọng của tôi là dành cho Foo phải được thực hiện như thế này:
public void Foo()
{
var x = new X { A = 1, B = new Y { C = 3 } };
}
Lưu ý rằng không cần phải gọi new Y
.
Đây có phải là điểm mới trong C# 6 không? Tôi đã không thấy bất kỳ đề cập đến điều này trong release notes, vì vậy có lẽ nó luôn luôn ở đó?
có thể trùng lặp của (http://stackoverflow.com/questions/32342188/c-sharp- object-initialization-bug) –