C ++ циркуляр включает

Я могу'решить эту проблему круговой зависимости; всегда получаю эту ошибку: "неверное использование структуры неполного типа GemsGame " Я нене знаю, почему компилятор неМы не знаем объявление GemsGame, даже если я включил gemsgame.h Оба класса зависят друг от друга (GemsGame хранит вектор GemElements, а GemElements требуется доступ к этому же вектору)

Вот частичный код GEMELEMENT.H:

#ifndef GEMELEMENT_H_INCLUDED
#define GEMELEMENT_H_INCLUDED

#include "GemsGame.h"

class GemsGame;

class GemElement {
    private:
        GemsGame* _gemsGame;

    public:
        GemElement{
            _gemsGame = application.getCurrentGame();
            _gemsGame->getGemsVector();
        }
};


#endif // GEMELEMENT_H_INCLUDED

... и GEMSGAME.H:

#ifndef GEMSGAME_H_INCLUDED
#define GEMSGAME_H_INCLUDED

#include "GemElement.h"

class GemsGame {
    private:
        vector< vector > _gemsVector;

    public:
        GemsGame() {
            ...
        }

        vector< vector > getGemsVector() {
            return _gemsVector;
        }
}

#endif // GEMSGAME_H_INCLUDED

Ответы на вопрос(4)

Ваш ответ на вопрос