由于使用了很多宏(可能使用了增强测试库)进行了单元测试,所以我的项目编译速度很慢。从gcc -ftime-report可以看出,预处理时间成本很高。有什么方法可以优化速度吗?

最佳答案

它实际上取决于您的宏,但是一般的想法是减少扩展它们的次数

例如,如果您使用的是Catch,一个好主意是将测试套件的公共(public)部分放在一个单独的共享文件(https://github.com/catchorg/Catch2/blob/master/docs/tutorial.md#scaling-up)中。

我从未使用过Boost测试库,但显然他们给出了类似的建议(http://www.boost.org/doc/libs/1_42_0/libs/test/doc/html/utf/usage-recommendations/generic.html)。

关于c++ - 有什么方法可以在gcc中加速宏预处理?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47547071/

10-11 15:51
查看更多