SORU
4 Ocak 2009, Pazar


Anlayış İEquatable

Eğer nesneleri karşılaştırmak istiyorum ve onlar İEquatable uygulamak&;^ lt . arayüz, birkaç sorum var:

  1. Neden uygular&;^. Eşittir lt zorunda kalırsam Equals(object ) geçersiz kılmak zorunda mıyım
  2. == kullanıyorum ve=! ben hayata bir kez İEquatable ?

CEVAP
4 Ocak 2009, Pazar


#1 ile ilgili olarak:

MSDN:

IEquatable<T> da geçersiz kılmak uygularsanız temel sınıf uygulamaları Object::Equals(Object) Onların davranış olacak şekilde GetHashCode() bu ile tutarlı IEquatable<T>::Equals yöntem. Eğer geçersiz kılmak yaparsan Object::Equals(Object), geçersiz uygulama da. aranan statik çağrıları Equals(System.Object, System.Object) sınıf yöntemi. Bu sağlar Equals()tüm çağırmaları yöntem tutarlı sonuçlar döndürür.

2) Hayır, bu normal referans karşılaştırmalar yapmak ve Equals yöntem kullanmayın.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Alexander Johnson

    Alexander Jo

    26 Temmuz 2008
  • GUN-TIME with Brandon

    GUN-TIME wit

    3 ŞUBAT 2009
  • VJ VIMANA

    VJ VIMANA

    3 Mayıs 2007