【初心者歓迎】C/C++室 Ver.46【環境依存OK】
at TECH
[
2ch
|
▼Menu
]
■コピペモード
□
スレを通常表示
□
オプションモード
□このスレッドのURL
■項目テキスト
550:デフォルトの名無しさん 08/01/10 12:47:53 >>548 これでどうかなぁ でもかなり無理矢理な感 // ABase.h #include "B.h" #ifndef ABase_h #define ABase_h class ABase { ... }; #endif // B.h #ifndef B_h #define B_h class ABase; template <...> class B { public: void F(); private: ABase* pABase_; }; #include "ABase.h" template <...> void B<...>::F() { pABase_->...; }; #endif 551:デフォルトの名無しさん 08/01/10 12:54:24 >>549 void*を元と異なるクラスにキャストしてるのが原因かと >void *p = (D *)&d; >B *bbb = (B *)p; ここ(pはD*なのかB*なのか??)を void *p = (B *)&d; B *bbb = (B *)p; とする(pはB*を保持)か、あるいは void *p = (D *)&d; B *bbb = (D *)p; とする(pはD*を保持) 552:548 08/01/10 13:17:57 >>550 レスthx しかし、できれば書きたくないコードですね。 設計を見直した方がいいのかなぁ。
次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
レスジャンプ
mixiチェック!
Twitterに投稿
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch
4152日前に更新/166 KB
担当:undef