首页 > 解决方案 > 为什么我们需要构建一个boost库,仅仅包含头文件还不够,因为boost是模板

问题描述

如果这是一个幼稚的问题,我很抱歉,我只是想知道为什么需要构建 boost 库,因为使用 boost 库包中的引导文件并构建一个包含 .lib .dll 静态和动态库的库。至于据我所知,boost是一个模板库,构建二进制库没有意义,你可以直接包含头文件并直接使用它......

标签: c++boost

解决方案


对于 Boost 问题,Boost 网站是一个很好的答案,特别是出现在Unix变体入门和Windows 入门中的“仅标头库”部分。

没有什么可建造的?

大多数 Boost 库都是仅头文件:它们完全由包含模板和内联函数的头文件组成,并且在链接时不需要单独编译的库二进制文件或特殊处理。

请注意,使用的是“大多数”,而不是“全部”。在 1.71 版中,有 16 个库必须单独构建,7 个库具有可选的单独编译组件。(Boost 站点有一个这些库的列表,并且该列表会随着新版本的发布而更新。)如果您不使用这些特定的库,那么正确,您可以只包含标头而不链接到 Boost 库。


推荐阅读