有些提升库只是标题库,有些则不是,并且由于各种原因等等。
是否有特定原因/设计决定为什么Boost.ProgramOptions
不是标头?
我想知道因为它声称自己是一个小小的"文档中的库,我没有看到任何与系统相关的原因(如线程或asio)。
答案 0 :(得分:1)
程序选项声称很小,但它是我们在Regex之后构建的第二大图书馆。 (它比boost文件系统和线程库更大。)我相信你应该很高兴他们为它构建一个库,而不是用大量的标题来阻塞你的项目。也许作者认为当他开始时会很小,并且在评论继续增长和添加功能时忘记更改评论。
答案 1 :(得分:-1)
由于违反了一个定义规则,并非所有C ++代码都只能写入标题。
例如,类的static
成员的存储预留需要只有一个翻译单元(尽管未来的C ++标准可能会避免这种情况)。
最初的目的是让Boost成为头球,但是他们不得不迅速放弃这个愿望。