为什么Boost :: Filesystem有二进制部分?

时间:2012-05-19 14:34:26

标签: boost boost-filesystem

出于好奇心,我想知道为什么boost :: filesystem库有一个编译组件,而在其他情况下,没有必要编译组件。编译部分中的什么不能在hpp中?

让我感到困惑的是,在我的计算机上,无论如何我都会编译这部分(在使用库之前),因此我希望每次构建我的时候都可以执行我在BJam中执行的相同编译。应用

为什么还有其他 .so / .a文件?

1 个答案:

答案 0 :(得分:5)

一些boost库只是header-only而另一些需要构建(系统,文件系统,图形,mpi,序列化等);可以将几个boost库配置为仅标头或单独构建。

单独构建的库的优点非常明显:您自己的项目编译速度更快,并且依赖于更少的外部代码。

顺便提一下,看看以下主题: http://boost.2283326.n4.nabble.com/Lighweight-header-only-version-of-Boost-Filesystem-tt3749876.html#none