2005-11-29から1日間の記事一覧

Boost.Foreach + Boost.Range + Boost.StringAlgorithms

Range というものが,ただのコンテナの拡張ではなく,いかに「うはーゆめがひろがりんぐ」なものであるか. がリリースに入っていないので, CVS HEAD からコピペ.要 Boost 1.33.0.

クラスの静的メンバをヘッダのみで定義してしまう

C++

っていうか上のヤツ書いてて気が付いたけれど,簡単なクラスで静的メンバが1つ2つぽつんとあるような場合,今まではその静的メンバの定義のためだけにわざわざヘッダと実装を分けないといけなくてうっとうしいなあと思っていたけれど,上のを応用すると,テ…

クラステンプレートの静的メンバの初期化は異なる翻訳単位で複数回可能だよ

C++

http://d.hatena.ne.jp/Cryolite/20051003#p1 の2番目の手法とかで,クラステンプレートの静的メンバの初期化をヘッダファイルでやっちゃうけれど,これって One Definition Rule (ODR) に違反する(同じヘッダを #include する異なる翻訳単位で2重に静的メ…

演算子によるデバイス/フィルタの合成/コピー

ちぅか,昨日のをスコープ限定型演算子構文糖(http://d.hatena.ne.jp/Cryolite/20050205#p1 の『[Boost][Range]iterationできるrange』を参照)使って書いたら楽しいことになる予感!! namespace cry{ namespace iostreams{ namespace composite_operators…