我读到在头文件中包含东西(编译速度)真的很糟糕。我经常把我的函数模板的定义放在MyClass.hxx文件中,我从#MyClass.h“#include”MyClass.hxx“。由于MyClass.hxx需要我的所有包含,并且根据定义它们直接包含在.h中 - 这看起来非常糟糕。有什么方法可以避免这种情况吗?
答案 0 :(得分:0)
我前一段时间问了一个与此相关的问题:pimpl for a templated class
您的另一个选择是precompiled headers。
除非你遇到不可接受的编译时间,否则我只会使用良好的通用实践来减少编译时间,例如标题中的前向声明和cpps中的#including(如果可能),并且只包括#including必要的内容。即使您在每个文件中#include阳光下的所有内容,最终结果也不会改变,未使用的内容将被剥离。