我環顧四周,但似乎沒有人問過這個問題,所以在這裏。Int32.Equals vs'=='運營商
我正在做一個自定義類,它將具有IEquatable
接口,因此我正在製作自己的Equals
方法。下面是它的樣子:
public bool Equals(QueryFilter qfilter)
{
if (qfilter == null)
{
return false;
}
return ((this.Value.Equals(qfilter.Value)) &&
(this.Name.Equals(qfilter.Name)) &&
(this.Order == qfilter.Order));
}
其中值,名稱和順序是QueryFilter類的字段。價值和名稱是strings
,但訂單是int
,我想知道是否使用==
運營商是好的,或者如果我應該去Int32.Equals
方法,以「匹配」其他字段如何進行比較?我查了MSDN,但沒有詳細說明,只是說它已經超載了,但我不確定在這種情況下是什麼意思。 ==
將永遠在工作中嗎?
那麼總之,哪一個更好? Int32.Equals
或==
?我應該什麼時候使用每一個?
你可能想看到這個問題:http://stackoverflow.com/questions/7345970/c-default-implementation-for-and-operators-for-objects –