最近C++のオープンソースライブラリでBoostというものを見つけました。C++の標準化委員会のメンバーが立ち上げたプロジェクトで、次期C++で採用される標準ライブラリのベータ版といった類のものです。かなり多岐にわたるライブラリなので、全く活用できていないのですが、文字列処理と数学関係の関数はありがたく使わせてもらっています。これの導入によって、プログラムの動作が安定したり、速度が向上しました。
導入方法も簡単で、以下のサイトからライブラリをダウンロードして、
https://www.boost.org/users/download/
適当なディレクトリに解凍。そしてインクルードディレクトリとライブラリのディレクトリをコンパイラーさんにリンクさせてあげるだけで、使えます。ただ一部のクラスは事前にコンパイルをかけてあげないと使えないみたいです。
しかし行列演算用のboost::numeric::ublas::vectorと標準ライブラリのコンテナのstd::vectorで名前が衝突するのは、面倒くさいです。。。どちらもよく使うのでtypedefなんかで改名するのが賢明でしょうか。