P-P*_*P-P 21 c++ compiler-optimization visual-studio-2008 visual-studio
我想减少大型C++项目的编译时间.我尝试使用预编译的头文件,接口等.但在我继续之前,我想知道是否有任何工具可以帮助检测为什么编译时间如此之长.有人建议使用pc-lint,我会试一试. 如何在大型C++项目中检测不必要的#include文件? 但是,如果有其他工具可以分析编译时间并讨论任何提高编译速度的提示,请告诉我.提前致谢.
环境:Microsoft Visual Studio C++ 2008或2010.
我喜欢的一种方法是查看一些源的预处理器输出 - 只是从编译器的角度阅读其中的一些,而不是有点抽象的表示,即#inclu
sion.你可能会发现一些你不需要的大块包含/库,并且不一定知道依赖/包含的存在(或需要).从那里,决定可以删除哪些依赖项.即使你的依赖关系都是正确的,大输出也可以建议你如何将更大的模块分成更小的部分.
我不知道有什么工具可以改善编译时间,但我可以建议一些手动补救措施(将其视为评论):
#include
保护,这样多次包含就不会产生任何问题template
函数和类;请记住,模板已成为inline
默认设置。太多的模板/元编程会导致巨大的编译时间。#define
s 的数量不必要地高,那么它们会增加预处理阶段,最终增加编译时间 归档时间: |
|
查看次数: |
3330 次 |
最近记录: |