我目前正在使用Visual Studio进行工作构建。说我对任何可能的警告都不感兴趣 - 警告和错误是在不同的团队中处理不同的团队等等。我只需要获取代码,尽快构建代码并运行它。
如果关闭所有警告会更快吗?
在Visual Studio中,这是Off: Turn Off All Warnings (/W0)
我认为GCC和其他编译器有类似的选择。
我一直想知道这一点,但却找不到有人问同样的问题。或者搜索字符串总是找到其他问题,并带有警告'在里面。我以为我会问,以防其他任何人想过这个。
编辑:我想到也许其他人可能认为这是一个愚蠢的问题。我认为关闭警告可能会加快构建时间的原因可能是它会阻止一些警告检查编译代码运行,从而节省时间。但是如果警告总是在幕后进行检查,并且它只是打印出不同于警告级别的警告,那么它就不会增加太多,除非你有吨和吨警告
答案 0 :(得分:2)
是的,关闭警告将加快构建过程,因为编译器不必执行打印。打印(显示文本)需要时间。
OP的问题是:在没有警告的情况下打印警告和打印之间的时间差是否可以忽略不计?
恕我直言,除非速度差异达数十分钟,否则我发现打印警告是一件好事。由于意外会议,与同事的意外会议或其他开销,白天浪费了十分钟以下的时间。但是,通过加快构建过程,忽略警告的成本可能高于任何利润增长。
答案 1 :(得分:1)
由于你提到gcc,gcc减少编译时间的正确方法是使用-MMD -MP开关生成(和使用)依赖文件,因此跳过不必要的重新编译。
对于Visual Studio,下一个最好的方法是启用增量构建,但请记住,它有时会无缘无故。