2011-05-01から1ヶ月間の記事一覧

std::tuple の Fusion アダプト

Sandbox にありました。Fusion を C++0x に移植する試みのようです (参照)。 https://svn.boost.org/svn/boost/sandbox/SOC/2009/fusion/自分でも書いてみました。GCC 4.5, GCC 4.6, VC10 に対応しています。 ヘッダ https://gist.github.com/996989 テスト …

Boost.Move 解説 (後編)

前回の続きです。今回は、Boost.Move による引数の転送を中心に解説していきたいと思います。 前回の補足 Boost.Move を使う利点 重要なことに触れていませんでした。 Move semantics は、乱暴に言えば「死すべきオブジェクト (rvalue) からは破壊的コピーを…

Boost.Move 解説 (前編)

はじめに Boost.Move は、C++0x で導入される move sematics を C++03 でエミュレートするべく、Ion Gaztanaga 氏 (Boost.Interprocess の作者) によって開発されたライブラリです。既に Boost 入りが決定しており、現在 trunk にあります。 この記事は、そ…

Boost.Move に対応した array

※ Boost.Move の入っている revision について書きます Boost.Interprocess には Boost.Move に対応したコンテナが付属していますが、その中に std::array に相当するものはありません。これは、move constructor などを追加することにより、array が aggreg…