Sử dụng
private int tada;
public int TADA
{
get
{
Console.WriteLine("GETTER");
return tada;
}
set
{
Console.WriteLine("SETTER");
tada = value;
}
}
và
int s = TADA = 1;
tôi chỉ nhận được setter ghi vào sổ đầu ra, vì vậy nó không có vẻ để gọi getter.
Từ C# Language Fundamentals
Bạn thậm chí có thể gán giá trị tương tự cho nhiều biến, như thế này:
int a, b, c, d;
a = b = c = d = 5;
Trong trường hợp này, a, b, c và d tất cả sẽ có giá trị 5. Công trình này vì trình biên dịch C# thực hiện nhiệm vụ ngoài cùng bên phải trước; rằng là, d = 5. Bản thân nhiệm vụ đó trả về một giá trị, giá trị 5. Trình biên dịch sau đó gán giá trị trả về cho c. Bài tập thứ hai cũng trả về một giá trị, v.v. cho đến khi tất cả các biến đã được gán .
Nguồn
2013-06-21 09:40:10
Bộ khởi động trên 'Thuộc tính' sẽ không được gọi trong trường hợp này. Nếu bạn _need_ để có nó chạy qua getter, bạn cần phải tách bài tập: 'Property = value; field = Property; ' –
http://stackoverflow.com/questions/13714246/assignment-and-sequence-points-how-is-this-ambiguous – Azodious