C++ や C などとは異なり、.NET フレームワークとは対照的に、C# には文書化されていない動作がほとんどありません。
すべてのプログラマーは、浮動小数点数を比較する際の危険性を認識しています…</p>
コード レビューを行う場合、チェックリストがあると便利なことがよくあります。通常、チェックリストの 1 つに「文書化されていない動作」が含まれており、それを見つけて削除する必要があります。
C# のこのようなチェック リストに記載されていない動作と、プログラムが存在する C# のバージョン。
この質問は、「<a href="https://stackoverflow.com/questions/24852609/how-are-ambiguous-enum-values-resolved-in-c">C# であいまいな列挙値はどのように解決されますか?」によって促されました。 、答えに驚きました。C# プログラマーとしての長年の経験から言えば、浮動小数点数以外の未定義の動作の使用による C# コードのバグに遭遇したことを覚えていません。
私が C++ コードを書いたときの遠い昔のことを思い出します。コーディング標準などには避けるべき未定義の動作のリストがよくありましたが、C# ではそのようなリストを見たことがありません。