に等しいです。問題ですか?私がそれを踏み越えようとするとき、私のオーバーライドはさらに進んでいません。オーバーライドは、変数IDに基づいて比較するように等しい私が上書きしようとしているオペレータ
3
A
答えて
11
オブジェクトのEquals()メソッドは、 '=='演算子と同じではありません。タイプに「==」演算子をオーバーロードするか、の代わりにi1.Equals(i2)
に電話する必要があります。
2
operator ==
のみ(デフォルトではそうではない)同じオブジェクトを両方i1
とi2
ポイントかどうかを教えてくれます。 operator ==
は無効にできますが、不変型の場合にのみ推奨されます。何をしたい
は次のとおりです。
bool test = i1.Equals(i2);
およびリファレンス平等使用ReferenceEquals
を確認するには.Equals
IDませんoperator ==
ID
if (obj is OrderID)
{
return ((OrderID)obj).ID.Equals(ID);
}
を使用しています。予想通りそれ以外の場合は、あなたのクラスが動作しない場合があります、またあなたに等しいをオーバーライドするときGetHashCode()
を上書きする必要があることを覚えてまた - 比較するのに言及した使用i1.Equals(i2)
のようEquals
0
を使用して、値の等価性をチェックするには。
関連する問題
- 1. は私が上書きしようとしている...添字/オペレータは[]タイプ
- 2. 等しいをオーバーライドして文字列と比較する
- 3. 辞書をテキストファイルと比較しようとしています
- 4. ユニットテスト中のIDに基づいてエンティティを比較します
- 5. FluentAssertions - どのようにしてShouldBeEquivalentToが空とnullを等しいとして比較するか
- 6. プログラムは、私は、これらのパラメータに基づいてプログラムを書くしようとしている方法
- 7. 2人を比較して変数を作りようとしています
- 8. は、どのように私は既知の情報に基づいて、Rでナイーブベイズモデルを実装しようとしている数値とカテゴリ変数
- 9. SignalRは私がOnConnectedを(上書きしようとしているOnConnected()、OnDisconnected()
- 10. スパークストリーミングフィルタリング私はストリーミングデータをフィルタ処理しようとすると、id列の値に基づいています
- 11. 私は変数をPHPファイルに価格を比較しようとしているが、変数は、スクリプトで呼び出しているスクリプト
- 12. strcpyが別の変数を上書きしないようにするには?
- 13. 私はPythonで働いていると、クラスメソッドでは、私はインスタンス変数を返すようにしようとしていますが、私は別のインスタンス変数を返すようにしたい変数に応じて、特定のインスタンスに変数
- 14. 特定のIDとDBに保存されているIDとを比較しようとすると
- 15. 行を1に連結し、IDに基づいて行を数えよう
- 16. 工夫、私は方法 'send_confirmation_instructions' を上書きしようとしている
- 17. Alexa - "f150"という意図を、 "f150"と書いた "f150"と比較しようとしています
- 18. Enumerable.Exceptは、私は、カスタム等値比較を除く方法を使用しようと、それが動作していない私のカスタムの比較子
- 19. NavigableMap - 値に基づいて比較
- 20. は、コンテナの幅に基づいて、私は0.75を乗じた幅に基づいて、コンテナの高さを設定しようとしています定数
- 21. リスト要素を比較しようとしています
- 22. 文字列が等しいかどうか比較するにはどうすればよいですか?
- 23. 私は2列に基づいて2つのデータフレームに参加しようとしている列補間
- 24. 私が使用して変更を確認するためにその親にビット単位のクローンオブジェクトを比較しようとしてい平等
- 25. セルに基づいて複数の値を比較する値
- 26. ケースステートメントに基づいてフィールドを作成しようとしています
- 27. nightmare.jsアンカーテキストに基づいてリンクをクリックしようとしています
- 28. 私は変数に変数を挿入しようとしているバッチ
- 29. Laravel私は名前のルートに変数を渡すようにしようとしているルートパス変数
- 30. constを比較するために、C++クラスの 'より小さい'演算子をどのようにオーバーロードできますか?次のように私は私のクラスにオペレータ未満をオーバーロードするために「<」をしようとしています
は、==演算子をi1.Equals(i2)を呼び出すのと同じものを使用しています。私はいいえだが、毎日何か新しいことを学ぶだろう... – Rob
@Rob彼らは同じではない、それは問題だ。 :) –