c++ - 有什么方法可以加速 gcc 中的宏预处理?

标签 c++ gcc compilation macros c-preprocessor

由于单元测试使用了很多宏(可能使用了 boost 测试库),我的项目编译速度很慢。从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/

相关文章:

linux - 如何增加 Linux 核心转储匹配符号的概率?

c++ - 未找到 stdarg.h

python - cx_freeze 和导入模块

构造函数/函数重载签名查找时间复杂度?

c++ - 结果 cout << "Hello"+ 1<<endl; (C++)

c++ - 我可以制作两个 std::ostream-s 的 std::pair 吗?

c++ - 为什么我的程序在 O0 和 O2 的优化级别返回不同的结果

c - 我的 makefile 有什么问题?

c++ - 如何从 lua 函数返回两个或多个表?

c++ - 继承只是为了共享枚举 - 危险吗?