クラスが大きくなりすぎて分割する必要があります。ただし、理想的には分割されるクラスは、メイン クラスの変数にアクセスする必要があります。メイン クラスへの参照を持つテンプレート クラスを作成しようとしていますが、インクルード再帰の問題があるようです。検索したところ、前方宣言を使用できると言われていますが、まだ不完全な型のエラーが発生します。これはよくある質問であることは知っていますが、スレッドHeaders Inclusive Each Other in C++ を見てきましたが、どの回答も意味をなさないか機能していないようです。
どんな助けでも大歓迎です。
classmain.h
class classref;
class classmain
{
public:
classmain()
:B(*this)
{};
classref B;
int a;
};
classref.h
#include "classmain.h"
class classref
{
public:
classref(classmain& ref)
:A(ref)
{};
classmain& A;
};