Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Uyarı
Bu içerik, Çerçeve Tasarım Yönergeleri: Kurallar, Deyimler ve Yeniden Kullanılabilir .NET Kitaplıkları için Desenler, 2. Sürüm'den Pearson Education, Inc.'in izniyle yeniden yazdırılır. Bu baskı 2008'de yayımlandı ve kitap o zamandan beri üçüncü baskıda tamamen revize edilmiştir. Bu sayfadaki bazı bilgiler güncel olmayabilir.
Bu bölümde eşitlik işleçlerinin aşırı yüklenmesi ele alınmakta ve eşitlik işleçleri olarak operator== ve operator!= 'e atıfta bulunmaktadır.
❌ Eşitlik işleçlerinden birini aşırı yükleyip diğerini yüklememezlik etmeyin.
✔️ Object.Equals ve eşitlik işleçlerinin tam olarak aynı semantik ve benzer performans özelliklerine sahip olduğundan emin olun.
Bu genellikle Object.Equals eşitlik işleçleri aşırı yüklendiğinde geçersiz kılınması gerektiği anlamına gelir.
❌ Eşitlik işleçlerinden özel durumlar oluşturmaKTAN KAÇıNıN.
Örneğin, bir parametre null olduğunda hata fırlatmak yerine false döndürün NullReferenceException.
Değer Türlerinde Eşitlik İşleçleri
✔️ DO, eşitlik anlamlıysa değer türlerinde eşitlik işleçlerini aşırı yükler.
Çoğu programlama dilinde, değer türleri için varsayılan uygulaması operator== yoktur.
Referans Türlerinde Eşitlik İşleçleri
❌ Eşitlik işleçlerini değişken başvuru türlerinde aşırı yüklemekten kaçının.
Birçok dilde başvuru türleri için yerleşik eşitlik işleçleri vardır. Yerleşik işleçler genellikle başvuru eşitliğini uygular ve varsayılan davranış değer eşitliğine değiştirildiğinde birçok geliştirici şaşırır.
Sabit başvuru türleri için bu sorun giderilir çünkü değişmezlik, başvuru eşitliği ile değer eşitliği arasındaki farkı fark etmede çok daha zor hale getirir.
❌ Uygulama, başvuru eşitliğinden önemli ölçüde daha yavaş olacaksa, başvuru türlerinde eşitlik işleçlerini aşırı yüklemekten KAÇıNıN.
Porsiyonlar © 2005, 2009 Microsoft Corporation. Tüm hakları saklıdır.
Pearson Education, Inc. tarafından Krzysztof Cwalina ve Brad Abrams'ın Yeniden Kullanılabilir .NET Kütüphaneleri için Çerçeve Tasarım Yönergeleri: Sözleşmeler, Deyimler ve Kalıplar, 2. Baskı eserinden izniyle yeniden basılmıştır. Addison-Wesley Professional tarafından Microsoft Windows Geliştirme Serisi kapsamında 22 Ekim 2008'de yayımlanmıştır.