如何加快C++代码的编译速度

2025-02-26 23:43:33
推荐回答(2个)
回答1:

 最重要的一个原因应该是C++基本的"头文件-源文件"的编译模型:
  每个源文件作为一个编译单元,可能会包含上百甚至上千个头文件,而在每一个编译单元,这些头文件都会被从硬盘读进来一遍,然后被解析一遍。
  每个编译单元都会产生一个obj文件,然后所以这些obj文件会被link到一起,并且这个过程很难并行。
  这里,问题在于无数头文件的重复load与解析,以及密集的磁盘操作。

回答2:

多进程编译,2-3个进程合适
使用预编译的库,
使用较快的CPU...
总之对构建流程进行优化...