ちょっとした文脈を与えるために、私はここでg ++を使ってC++コードをコンパイルすることを話しています。g ++ - プロダクションのために "-g"フラグを使用していますか?
プロダクションビルドに-gフラグを含めると、メンテナンスに便利であることがわかります。予期せずクラッシュした場合、プログラムは非常に簡単にデバッグできます。
ここで私の質問は、-gフラグを含め、サイズを大きくする以外の方法で実行可能な出力に影響しますか?何とかコードを遅くすることができますか(特定の最適化を無効にするなど)?
私が理解しているところでは、(デバッグシンボルを含むことしか書かれていない)ドキュメントではありませんが、わかりません。
私はこれらのドキュメントを読んでいるので、gcc以外のコンパイラだけが-gによって影響を受ける最適化を持っています。私の経験ではgccの方向性は他の方向に向いています。デバッガで見ることとできることは、最適化の影響を受けます。もちろん、これは積極的な最適化から期待されるものです。そこにないものをデバッグすることはできません。 – Gene
@ジーン:ああ、私は見る...面白い、それを指摘してくれてありがとう。だから私はGCCについて間違っていた人のようです! – Mehrdad