编译器是否在 C++ 中编译头文件?

时间:2021-05-30 02:21:57

标签: c++ c compilation

像这是两个头文件,现在编译器会编译这些吗?

#include<iostream.h>
#include<conio.h>

2 个答案:

答案 0 :(得分:0)

当任何文件包含在 #include 指令中时,编译器会处理其内容,就好像它是正在编译的源文件的一部分

答案 1 :(得分:-1)

实际上这取决于。

#include 的意思是:嘿,编译器能否请您将该文件的内容复制到该文件中(在预处理阶段)。编译器将内容复制到给定文件后,它现在将用于编译器,这取决于。大多数编译器默认编译器编译给定的 c++ 文件,但其他外部函数和类(例如 stl 和其他不属于您的第三方库)将在运行期间找到(这是动态库)动态库的另一侧是静态库,这是它不是编译器编译特定文件,而是针对您的依赖项并沿着您的代码编译它们并将它们放在一起,在这种情况下,程序不需要在运行期间查找库,这就是我说它依赖的原因。

有关编译器阶段 here 的更多信息。

有关动态库和 stl 以及动态库 here 的更多信息。

相关问题