Как сделать на c++ что бы 2 класса из разных файлов видели друг друга?
если делаю так :
##################### File 1 #########################
//consol.cpp
#include <iostream>
#include "inh.cpp"
using namespace std;
class bb;
class aa : public bb
{
public:
int n;
aa() {n=1;}
void aac();
bb *pbb;
void prnaa();
};
void aa::aac() {pbb = new bb(); }
void aa:: prnaa() {cout << "in aa : " << n << endl;}
void main()
{
aa aaa;
aaa.aac();
aaa.pbb->bbc(&aaa);
aaa.pbb->paa->prnaa();
aaa.pbb->paa->n = 5;
aaa.pbb->paa->prnaa();
cin.get();
}
##################### File 2 #########################
//inh.cpp
#include "consol.cpp"
class bb
{
public:
int n2;
bb() {n2=2;}
void bbc(aa *paa2);
aa *paa;
void prnbb();
//~bb();
};
void bb::bbc(aa *paa2) {paa = paa2; }
void bb:: prnbb() {cout << "in bb : " << n2 << endl;}
то получаю ошибку : too many include files:depth=1024
но а если те же 2 класса без includes в одном файле, тогда работает.
если делаю так :
##################### File 1 #########################
//consol.cpp
#include <iostream>
#include "inh.cpp"
using namespace std;
class bb;
class aa : public bb
{
public:
int n;
aa() {n=1;}
void aac();
bb *pbb;
void prnaa();
};
void aa::aac() {pbb = new bb(); }
void aa:: prnaa() {cout << "in aa : " << n << endl;}
void main()
{
aa aaa;
aaa.aac();
aaa.pbb->bbc(&aaa);
aaa.pbb->paa->prnaa();
aaa.pbb->paa->n = 5;
aaa.pbb->paa->prnaa();
cin.get();
}
##################### File 2 #########################
//inh.cpp
#include "consol.cpp"
class bb
{
public:
int n2;
bb() {n2=2;}
void bbc(aa *paa2);
aa *paa;
void prnbb();
//~bb();
};
void bb::bbc(aa *paa2) {paa = paa2; }
void bb:: prnbb() {cout << "in bb : " << n2 << endl;}
то получаю ошибку : too many include files:depth=1024
но а если те же 2 класса без includes в одном файле, тогда работает.