Visual Studioがコードをグレーアウトして冗長であると宣言すると、コンパイラはこのコードを無視するか、このコードをコンパイルしますか?言い換えれば、この冗長コードは決して解釈されないだろうか?それとも単にコードが必須ではないことを単に思い出させるものですか?冗長コード警告の意味
クラス/構造体などに冗長なコードを残しておけば、パフォーマンスに影響しますか?
おかげ
Visual Studioがコードをグレーアウトして冗長であると宣言すると、コンパイラはこのコードを無視するか、このコードをコンパイルしますか?言い換えれば、この冗長コードは決して解釈されないだろうか?それとも単にコードが必須ではないことを単に思い出させるものですか?冗長コード警告の意味
クラス/構造体などに冗長なコードを残しておけば、パフォーマンスに影響しますか?
おかげ
コードが冗長である場合、それはコンパイルするために必要ではないですが、中にそれを残すことは、パフォーマンスに与える影響はありません。
Visual Studioでコードが冗長であるとコンパイラが認識したため、コンパイラはILまたはマシンコードにコンパイルされません。
プロジェクトに冗長なコードを残すことはお勧めできません。将来コードが必要な場合は、ソースコードリポジトリの古いバージョンのファイルから取得する必要があります。
C#はインタープリット言語ではなく、実行時にMSILからコンパイルされたJITted(ジャストインタイムコンパイル)言語です。したがって、JITterは、コードが冗長であるかどうかを判断するための分析を行い、それを削除することができます。
Visual StudioでMSILのC#のコンパイル冗長なコードに
C#コンパイラ自体がこの問題にフラグを立てているため、(1)でコードが削除される可能性があります。
ええ、それはちょうど良いとあなたを思い出させるだけです。ほとんどのコンパイラは、プログラマに知らせることなく、多くの異なる微妙な方法で冗長コードを削除しますが、明らかな特定のケースでは、プログラマに伝えることをお勧めします。
いいえ、コンパイルされていません。
テスト時にナットを駆動することがあり、デバッガの「次のステートメントを設定」コマンドを一部のステートメントに使用してコンパイルできませんでした。