只是为了提供一些上下文,我在这里谈论的是使用 g++ 编译 C++ 代码。
我可以看到在生产构建中包含 -g 标志将如何方便维护:如果程序意外崩溃,调试起来会容易得多。
我的问题是,包含 -g 标志是否会以任何其他方式影响输出可执行文件,而不是增加其大小?它能否以某种方式使代码变慢(例如通过关闭某些优化)?
据我了解,它不应该(文档只提到包含调试符号),但我不确定。
最佳答案
-g 标志不影响代码生成,仅更改符号表和调试元数据。这些并不存在于可执行代码部分,因此当代码在 hte 调试器之外运行时,它们甚至不会影响性能。
关于c++ - g++ - 使用 "-g"标志进行生产是一个好主意吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10988318/