Boost 1.36.0リリース

とりあえず、何が追加されたのかちょっと調べてみた。

Accumulator:累計計算ライブラリ
一番最初のサンプルは平均値と"moment"を求めているけど、"moment"は、これのことかな?
Σ(xin)の平均っぽいけど、統計の分散を求める奴だっけ?

Exception:例外処理の補助
複数の例外をまとめて投げたり、キャッシュしたりしてくれるみたい。
例外を投げるのが大好きなおいらとしては、ファイル処理エラーのサンプルはかなり(・∀・)イイ!!

Units:単位付きの値
メートル値を扱う場合、たいていdoubleを使うけど、Boost.Unitsはそのまま「長さ値」として扱う。
つまり、1.0mと20.0cmみたいな感じ。当然、演算は単位系を考慮して演算してくれる。あとは、単位の変換とか、単位の表記("m"とか、"kg"など)とかもある。
そういえば、昔、メートル値とセンチメートル値を足してはまったような記憶が。

Unordered:ハッシュ付きset/map
TR1のunordered_setとunordered_mapの実装ってことでおk?
2chのBoostスレによると、結構速いみたい。

更新分については、最近お世話になりっぱなしなBOOST_FOREACHの逆のBOOST_REVERSE_FOREACHが追加されたり、丸め処理が追加されたけど、小数点以下n桁で丸めるってのは無いのかな? まぁ、これは、Boost.Unitsの範疇かも。

で、問題は、C++Builder 2009はBoostを標準サポートするけど、当然、1.36.0は間に合わない。
う〜ん、微妙にタイミングがw
完全対応は、次次期のCommodoreかな・・・。

あと、JCL/JVCLも更新されたけど、C++Builder/Delphi 2009のリリース前に来るとは意外。