このサイトを使い始めてから、Boost ライブラリについてよく耳にします。Boost ライブラリの主な利点は何なのか (したがって、なぜ使用する必要があるのか)、また Boost ライブラリの移植性はどの程度なのかを知りたいです。
ベストアンサー1
Boost は、標準委員会の複数のメンバーによって組織されています。
そのため、次の標準に含まれるライブラリの育成の場となっています。
- これはSTLの拡張版です(省略された部分を補います)
- 十分に文書化されています。
- 十分に査読されています。
- アクティビティが活発なので、バグがすぐに見つかり、修正されます。
- プラットフォームに依存せず、どこでも動作します。
- 無料でご利用いただけます。
tr1 がもうすぐ登場するので、boost がすでに多くの分野をカバーしていることを知っておくのは良いことです。tr1 のライブラリの多くは、基本的に boost のオリジナルから直接適応されており、試行錯誤されています。違いは、それらが boost ではなく std::tr1 名前空間に移動されていることです。
必要なのは、コンパイラのデフォルトに以下を追加することだけです検索パスを含める:
<boost-install-path>/boost/tr1/tr1
標準ヘッダーをインクルードすると、boostは必要なすべてのものをstd::tr1名前空間に自動的にインポートします。
例えば:
std::tr1::share_ptr を使用するには、<memory> を含めるだけです。これにより、すべてのスマート ポインターが 1 つのファイルに含まれます。