>プライベート継承よりも包含&インライン関数の方が良いと思う。
○汎用性が高い
 - 同じ名前で一部だけ流用とかも簡単
 - 名前の変更も問題なし
 - NVIにするのも簡単
○余計な関数を導入するリスクが少ない
 Traitsにするのならちゃんと切り離した方が良いと思う。

×オブジェクトがちょっと大きくなる(pimplにしてもポインタ分余計になる)
×コードが面倒

といったところかね。


>forはよく見るけど別のってあまり見なくない?
だからdynamic_castとかでは普通に使うって。MC++Dで紹介されてるよ。