【Unity】C#のIEquatableとは

  • |
【Unity】C#のIEquatableとは
   

他の人のコードを読むときに思わない出会いがよくあります。
今回調べてみようと思った「IEquatable」もその中の一つです。
c#が用意しているインターフェースということはわかるのですが、どのような時に使ったら良いのかを簡単ですが調べてみることにしました。

IEquatable

IEquatableにはEqualsというメソッドが定義されています。
IEquatable Interface



実装例


Equals()を使ってオブジェクト同士を比較します。


継承して利用する

IEquatableを使うメリットとして、継承したクラスとの比較ができることです。


HogeオブジェクトとHogeChildオブジェクトを比較してみます。


このようにオブジェクトを比較できます。

最後に

ObjectクラスにはそもそもEquals(object obj)が定義されています。
IEquatableを使うメリットは型のキャストがないので、パフォーマンスが良いみたいです。
IEquatableを完全に理解する

ただ、こちらの記事を見る限り使い所がとても難しそうに思える、かつ実際の使い所がピンとこないので個人的には使う機会がない気がしています。

Related Posts Plugin for WordPress, Blogger...