c ++是否可以将所有头文件放在cpp文件中

Cra*_*ing 1 c++

如果.cpp文件加载了应用程序所需的所有头文件而不是在主源文件中预先加载它,那么它是否可以在大型程序中进行优化?

喜欢而不是Main.cpp

#include <header.h>
#include <header1.h>
#include <header2.h>
#include <header3.h>
//main code
Run Code Online (Sandbox Code Playgroud)

我可以只有一个.cpp文件来执行此操作并只在main.cpp中加载.cpp文件吗?像这样

Loader.cpp

#include <header.h>
#include <header1.h>
#include <header2.h>
#include <header3.h>
Run Code Online (Sandbox Code Playgroud)

Main.cpp的

#include "Loader.cpp"
//main code
Run Code Online (Sandbox Code Playgroud)

Pot*_*ter 6

预处理只会生成要编译的文本.您的建议会导致相同的源代码,因此它对优化没有影响.

一直包括所有标题(称之为"超级标题")可能导致编译速度慢.

但是,预编译头是一种流行的解决方案,可以让这种超级头快速工作.您可以检查IDE或编译器的文档以了解其预编译的头文件工具.

在任何情况下,通常超级头仍以命名.h; 因为它没有实现任何.cpp名称是不合适的.