C++テンプレートテクニック読了

- 作者: επιστημη,高橋晶
- 出版社/メーカー: ソフトバンククリエイティブ
- 発売日: 2009/04/25
- メディア: 単行本
- 購入: 16人 クリック: 224回
- この商品を含むブログ (54件) を見る
C++のテンプレートを利用した様々なテクニックが紹介されている書籍です。
C++のテンプレートを使ったテクニックというとかなり難解なイメージがありますが、この書籍では非常に分かりやすく説明されているので、さくさくと読み進めることができました。
まぁ、本を読んで理解できたからといって、実際に書こうとすると難しいんでしょうけどね。
また、いずれのテクニックも実用で使えそうなのが良いですね。(ジェネレーティブプログラミングを読んだときは、いまいち使いどころが分からなかったので)
たとえばポリシーは、継承ではなくテンプレートパラメータを利用してクラスをカスタマイズする手法。継承だといちいちクラスを作らないといけないし、複数の属性を持たせると多重継承になってしまうので、こういう技は便利ですね。ScalaのTraitにも似てるのかな?
あとは、テンプレート型変換演算子を使って、戻り値の型が異なる関数をオーバーロードができるっていうのも面白いし、Expression TemplateやExtension Member Functionは、LINQのExpressionTree、C#の拡張メソッドを思わせます。しかし、こういう手法ってどうやって思い付けるんだろ。
最後にC++0xについても書かれていますが、コンセプトという仕組みを導入することで、テンプレートのエラーメッセージが分かりやすくなったり、型の制約がつけられるようになるらしいです。これは期待ですね。
非常に知的好奇心が刺激され、久々にC++でプログラミングしたくなる一冊でした。