boost

ThreadとMutexオブジェクトの生成順序

Boostにはthreadを扱うテンプレートライブラリが用意されていて,比較的簡単にスレッドの生成などが行える.クラスのメンバ関数をスレッドとして実行するには,以下のようにboost::threadのコンストラクタにboost::bindを渡してやれば良い. #include <boost/bind.hpp> #incl</boost/bind.hpp>…

スマートポインタのキャスト

boostのshared_ptrは非常に便利で常日頃からお世話になっているが,派生クラスへのキャストを行いたい時はどうすればいいのかと思っていたら,dynamic_pointer_castというものを使えばよいらしい. #include <boost/shared_ptr.hpp> class base { public: base() { } virtual ~base</boost/shared_ptr.hpp>…

FreeBSDにBoostを入れるのにハマる

Portsから入れようとするとエラーが出て上手くインストールできないので,ソースをとってきてコンパイルしても,やっぱりエラーになる. $ tar xzfv boost_1_51_0.tar.bz2 $ cd boost_1_51_0 $ ./bootstrap.sh $ ./b2 ... gcc.compile.c++ bin.v2/libs/wave/…