- 548 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 12:11:58 ]
- // ABase.h
class ABase { public: typedef std::vector<B> VectorB; // Bは完全型でなくてはいけない? virtual VectorB::iterator F(const VectorB& vec)=0; ... } // B.h template <...> // テンプレートクラスのため.hと.cppにわけることができない class B { public: void F() { pABase_->...; // ABaseの関数を呼び出す ... } private: ABase* pABase_; }; ABaseはBの定義が必要、BはAbaseの定義が必要という状態になってしまい、困っています。 こういった循環参照を避ける手法はないでしょうか?
|

|