5

次の算術計算を検討してください。簡単にするために、可能な限り短くしました。

x = y + y * z;

x = y + z - y * z;

これは StyleCop がなくても完全に合法であり、おそらく計算は BODMAS に従います (他の算術計算と同様)。

これが StyleCop を通過すると、次の警告が表示されます。

CSharp.Maintainability : 算術式内に括弧を挿入して、演算子の優先順位を宣言します。

おそらく、括弧を挿入するときは、次のように BODMAS の規則に従うだけで済みます。

x = y + (y * z);

x = (y + z) - (y * z);

計算を実行したい場合、StyleCop は BODMAS のルールを明示的に定義することを期待しているという私の仮定を修正します。

4

1 に答える 1

11

正しいです。StyleCop は基本的に、演算子の優先順位にあまり慣れていないことを想定しており、明示的に書き出すことを望んでいます。誰かが後で式に取り掛かると、より安定したコードにつながる可能性があります。技術的には必要ありませんが、コンパイラがそれをどのように処理するかについて、あなたの仮定が完全に正しいと仮定します。当然のことながら、通常はそうです(BODMAS)。

最終的には「何をしているのか分からないかもしれないので、それを綴ります」というケースです。それは悪い態度ではありません-コードの安定性が主な懸念事項です-しかし、その警告をオフにすることもできます.

于 2013-01-03T09:16:48.133 に答える