Как вы подходите к написанию проверок равенства для структур структур
и классов
] вы создаете?
1) Требуется ли для «полной» проверки равенства столько стандартного кода (например, переопределить Equals
, переопределить GetHashCode
, общий Equals)
, operator ==
, operator! =
)?
2) Указываете ли вы явно, что ваши классы моделируют IEquatable
?
3) Правильно ли я понимаю, что на самом деле нет способа автоматически применять переопределения Equals
, когда я вызываю что-то вроде a == b
и мне всегда приходится реализовывать как члены Equals
, так и operator ==
?