class TClass2;
class TСlass1
{
private:
TClass2 *cl2; -------ошибка - класс TClass2 еще не описан
protected:
public:
};
class TСlass2
{
private:
TClass1 *cl1;
protected:
public:
};
Видимость класса
Но при описании классов когда второй еще не описан, в первом происходит ошибка:
class TСlass1
{
private:
TClass2 *cl2; -------ошибка - класс TClass2 еще не описан
protected:
public:
};
class TСlass2
{
private:
TClass1 *cl1;
protected:
public:
};
Как быть?
Вот как быть
Как добавление к ответу уважаемого koval: класс может быть определен лишь один раз, однако объявлен может быть (теоретически) сколько угодно раз. Поэтому компилятор, видя класс TClass2 в определении TClass1, должен (заранее) встретить объявление класса TClass2. А уж определение TClass2 может быть и в другом месте (или ниже, как у вас, или в другом файле).