-2

为什么 C++ 头文件不需要包含实现文件 (.cpp)?

我想知道调试器是完成这项工作还是不需要它?

4

3 回答 3

1

.cpp 文件包含标题,而不是相反

您的问题已在此处得到解答:

为什么我不需要在标题中包含 library.cpp?

祝你好运

于 2013-09-10T04:37:45.083 回答
0

编译器只需要头文件来符合接口。

要运行和执行代码,您需要实现,但不是在源代码中,而是作为库。它可能是动态的(Linux 上的 .so - 文件,Windows 上的 .dll)或者在编译后静态链接。

对于调试,您需要源文件来逐行执行。

于 2013-09-10T04:33:49.870 回答
0

头文件主要只是类型声明和对在其他文件中实现的代码的引用。源文件需要知道这些声明,但头文件不需要知道实现(内联除外)。多个源文件可以使用同一个头文件,链接器将确保它们可以根据需要访问共享的实现代码。

于 2013-09-10T04:34:13.673 回答