テンプレート使うとヘッダが肥大化してコンパイル&リンク時間が爆発する! なんとかして! という問題への対処法です。 コードはこちら: http://gist.github.com/640298 以下、解説…ですが、しっかりした解説を書くのは面倒なので、箇条書き程度に。 基本アイデアとしては、実装の詳細は非テンプレートの実装用クラスの内部クラスに隔離し、テンプレートはその薄いラッパにすることによって、ヘッダから実装を取り除く、というものです(thin template 技法)。 通常の thin template では、非テンプレートの実装用クラスのメンバ構成までは秘匿できませんが、そこを pImpl にすることで、ほぼ完全に実装を秘匿できます。 ただし一点、メモリ管理だけは秘匿しにくいので、そこは boost::shared_ptr を使って「型を消す」ことで対処しています( shared
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く