3

我正在开发一个静态库,我需要在其中使用开源 SBJson 类。

在分发我的静态库时,将 SBJson 类包含到我的库中而不需要包含其所有头文件(.h)的最佳方法是什么?

4

2 回答 2

1

如果您创建一个静态库,任何使用该静态库的应用程序都需要知道该库可用的所有公共方法。

如果 SBJson 是您的库的内部部分,那么您在分发应用程序时不必包含其头文件。您只需包含面向公众的方法的 .h 文件。

编译静态库时,不要在复制文件阶段包含 SBJson 的头文件。

于 2012-02-19T02:32:51.293 回答
1

最好的方法是不要(尝试)隐藏依赖关系,然后告诉客户他们需要构建和链接到 SBJson 库。

安全的替代方案是 SBJson 的一个分支,所有符号都重新声明为不同的名称(例如,唯一的前缀)。这将确保您的客户零麻烦地将您的库与其依赖项链接起来。

于 2012-02-19T05:22:38.797 回答