掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
引数付きコンストラクタのテンプレートクラスを継承するには? (ID:65641)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
>template < class T, typename D > >CTestModeRoot< T, D >::CTestModeRoot( D d) : T( d ) 微妙に、というか、二重三重に違和感が。 ・ここで発生する引数オブジェクト d のコピーははたして可能か? ・常に引数は1個だけなのか? あたりに俺は拒否反応を感じまくっているわけで。 > template < class T, typename D > > class CTestModeRoot : public T そもそも基底クラスがわからないのに適当に派生しちゃうわけ? それってオブジェクト指向原理主義な人たちから総スカンを喰らいそうな気がする。 俺的にもこんなコードを書く選択肢はありえないと思う。 template<typename T> class CTestMode { T obj; }; でダメな理由があるなら俺の後学のために知りたいなーと思う。 > プリプロセッサの状態により分けているといったものです。 それでいいなら template みたいに難しい事考えずに #if AAA class XXXX : public YYY { ... }; #endif #if BBB class XXXX : publiz ZZZ { ... }; #endif とするほうが後の手間がかからないような気がする・・・・
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.