# pragma once // 二重インクルード防止 # include "classA.h" // クラスAのヘッダ →継承してるので必要 // #include "classB.h" // クラスBのヘッダ →前方宣言できるのでcppにインクルードをかけば良い。 # include "classC.h" // クラスCのヘッダ →実態をメンバに持ってるので必要 // #include "classX.h" // そもそもヘッダで使ってない(もしcppで使ってる時は、cppに書くだけでOK) class classB; // 定義がポインタであれば前方宣言だけでOK class classD : public classA { public: ~ private: classB* m_pClassB; // ポインタ classC m_classC; // 実態 }; 継承している場合
