C#


ROSLYN.PERFORMANCE.CA1815 : Override equals and operator equals on value types (C#)

See Roslyn-Detected C# Warning Classes for more information.

要旨

For value types, the inherited implementation of Equals uses the Reflection library and compares the contents of all fields. Reflection is computationally expensive, and comparing every field for equality might be unnecessary. If you expect users to compare or sort instances, or to use instances as hash table keys, your value type should implement Equals.

この指摘はRoslynのCA1815に該当します。ルール詳細につい ては、下記リンクを参照してください。 CA1815

プロパティ

クラス名 Override equals and operator equals on value types (C#)
日本語クラス名 Override equals and operator equals on value types (C#)
クラス分類 信頼性 (reliability)
ニーモニック ROSLYN.PERFORMANCE.CA1815
カテゴリー なし
対応言語 C# で利用可能です。
有効/無効設定 このワーニングクラスのチェックはデフォルトで無効になっています。チェックを有効にするにはプロジェクト設定ファイル (configuration file)に以下の WARNING_FILTER ルールを追加してください。
WARNING_FILTER += allow class="Override equals and operator equals on value types (C#)"

関連のある設定ファイルパラメータ

設定ファイルの以下のパラメータがこのワーニングクラスのチェックに影響します。