【发布时间】:2012-02-29 17:52:37
【问题描述】:
在使用大型代码库时,我看到在使用某个对象时,会包含该对象的头文件。在其他时候,该对象的库链接在 make 文件中。
做其中一个的原因是什么。如果他们可以访问源代码,为什么不包含您正在使用其对象的所有文件,而不是链接到他们的 lib *.a 文件?
编辑:根据第一条评论说清楚。这是一个令人困惑的声明
【问题讨论】:
-
“头文件链接在makefile中”是什么意思?
-
目标文件已链接。不是头文件AFAIK。
-
解决了我的问题。我跳过了非常重要的描述。
-
我将这个问题解读为:“有些人将 C++ 文件编译为共享对象或 DLL,然后将其链接到他们的代码中,而有些人则使用相同的文件(例如 file.cpp)并执行不编译它,而是在他们的代码中#include“file.cpp”......那么这两种不同的方法访问和使用file.cpp中的代码的原因是什么?”你问的是这个吗?
-
是的。这就是我的意思,但不是“某些人”。我看到这发生在同一个代码库中。