- 648 名前:デフォルトの名無しさん mailto:sage [2007/08/01(水) 05:12:34 ]
- >>644-646
ちょっとサンプル作ってみたよ、参考にしてみてくだしあ>< ttp://2ch-library.com/uploader/src/2ch7515.cpp.html 方針としてはDataの配列(サンプルではvectorだけど^^;) を持つCounterから直接インクリメント演算子を呼び出すんでなくて、 間に別のクラスをかませるってやり方 サンプルではそのクラスが合計インクリメント数も保持しちゃうんだけど、 チョッと弄ればCounterクラスが合計を保持するようにも出来る この場合はfriend指定使ってるけどboost::functionみたいなデリゲート使えば 必要な関数だけ渡してfriend指定なしにもできる >>647 ちょっとエスパー回答だけど、例えば foo< bar< hoge< hage<piyo> > > > …(*) ってのをtypedefみたいにショートカットするなら template <type T> struct foo2 { typedef typename foo< bar< hoge< hage<T> > > > type; }; とでもして、foo2<piyo>::typeってすれば(*)と同じような意味になりtypedefみたいな使い方ができる こういうのをメタ関数と呼ぶらしい
|

|