コンパイルエラーの原因となるファイルがいくつかありますが、次のことができますか?
header1.h
class Class1{
public:
void function1(Class1 &);
};
header2.h
class Class2{
public:
void function2(Class2 &, Class1 &);
};
cpp2.cpp
#include "header2.h"
void Class2::function2(Class2 & my2Class, Class1 & my1Class){};
main.cpp
#include "header1.h"
#include "header2.h"
// functions
エラーは、header2.hがClass1をタイプとして何も認識していないことを示しています。インクルードを使用せずに、または両方のクラスを同じファイルに配置せずに、このヘッダーファイルでタイプClass1のオブジェクトを宣言するにはどうすればよいですか(これらは完全に分離されており、main内で呼び出される内部関数のみを満たす必要があります)。
ありがとう!