即使你使用了C++20的模块化,你依然应该将声明与实现分离!!模块接口文件 .ixx/.cppm
要求顺序编译,如果你不分离声明与实现,一旦修改上层模块,就需要重新顺序地编译全部下层模块文件,极其耗时。注意 .cpp
文件可以轻松并行编译,如果模块接口仅含声明和少部分内联函数、将大部分实现代码放在 .cpp
文件,因为修改 .cpp
文件不会影响模块声明和文件,其他文件不需要重编译,更新项目耗时极短。如果你尝试使用标准库库模块(不需要编译标准库头文件),并分离模块接口文件与实现文件,将看到极快的编译速度。
暂无评论