Otomatik özellikler kullanıldığında, derleyicinin ekranın arkasında kendi arka alanı oluşturduğunu biliyorum. Ancak, birçok programlarında açıkça aşağıdaYedekleme ile veya desteksiz otomatik özellikler - tercih?
private int _backingField;
public int Property { get { return _backingField; } }
arasındaki fark yukarıdaki nedir ve yazma, ben insanlar görüyorum öğrenmek için okumak?
public int Property { get; private set; }
Ben aslında alıcı ya da setter yan etkileri olduğunda onun bariz özelliğini kullanmak için anlamak, ancak bu çoğu zaman böyle değil. Ayrıca, yapısal alandaki destek alanını açıkça kullanmanız gerektiğini anlıyorum, üyelerine mülkler aracılığıyla erişemezsiniz.
ı bulmak mümkün olmuştur tek fark o zaman basit tercihi mi. Değerini çağırma yolu tanımlanan sınıfın içinde farklı olduğudur, yoksa onun mülkiyet veya üzerinden bir değer arayarak daha şeydir doğrudan alana erişerek? Basit kurallar?
başlamak önlemek kamu Vector2 TheVector {get; set; } TheVector.X = 10; Bunun yerine, gerçek alanı kullanmalıyım. Değer/referansa göre geçiş hakkında bir şey. (C# için değer/referans olarak geçen süreyi açıklığa kavuşturan bir okuma materyaliniz var mı?) – Taelia
Ayrıca, iki örneğim arasında gerçekten bir fark olmasaydı, neden bu kadar çok kişi hala bir destek alanı yaratacaktır? amaç)? – Taelia
@Taelia: Doğru, bu normalde kaçınacağım, değişebilen bir yapının durumu. Çünkü özellik değerin bir kopyasını döndürür. Ve diğer insanların yaptıklarına sebep vermeye çalışmıyorum. –