在ubuntu上使用Boost

Kre*_*dns 15 c++ boost ubuntu-9.04

我过去听过很多关于Boost的好评,我想我会试一试.所以我从Ubuntu 9.04中的包管理器下载了所有必需的包.现在我无法找到如何实际使用darn库.

有没有人知道一个关于Boost的好教程,从Hello World到高级主题,还介绍了如何在ubuntu上使用g ++编译程序?

Kyl*_*mek 18

同意; boost网站在很大程度上都有很好的教程,按子库分解.

至于编译,在头文件中定义了80%的库实现,这使得编译变得微不足道.例如,如果你想使用shared_ptr,你只需要添加

#include <boost/shared_ptr.hpp>
Run Code Online (Sandbox Code Playgroud)

并像往常一样编译.无需向g ++命令添加库路径,也无需指定-llibboost.只要boost目录位于包含路径中,就可以完成所有设置.

从boost文档:

需要编译和链接的唯一库如下:必须单独构建的唯一Boost库是:

  • Boost.Filesystem的
  • 了Boost.Iostreams
  • Boost.ProgramOptions
  • Boost.Python(在构建和安装之前查看Boost.Python构建文档)
  • Boost.Regex
  • Boost.Serialization
  • Boost.Signals
  • Boost.Thread
  • Boost.Wave

一些库具有可选的单独编译的二进制文件:

  • Boost.DateTime有一个二进制组件,只有在使用其to_string/from_string或序列化功能时才需要,或者如果你的目标是Visual C++ 6.x或Borland.
  • Boost.Graph还有一个二进制组件,只有在你打算解析GraphViz文件时才需要它.
  • Boost.Test可用于"仅标题"或"单独编译"模式,但建议单独编译以供严肃使用.

因此,如果您正在使用其中一个列出的库,请使用入门指南,以便开始编译和链接到Boost.


小智 5

Boost网站有一些很好的教程,它们只是隐藏的一种.