Мне нужен указатель на мой основной класс из одноэлементного класса. Заголовок синглтон-класса включен в основной класс.
В MainClass.cpp
mSingletonInstance->mMainClass = this;
Чтобы избежать проблемы рекурсивного включения, я не включаю заголовок основного класса в класс синглтона, я просто использую предварительное объявление основного класса.
В Singleton.h:
class MainClass;
class Singleton {
public:
MainClass *mMainClass;
};
Проблема возникает, когда я пытаюсь получить доступ к методу из основного класса ... Я получаю ошибку неполного типа.
In Singleton.cpp
Singleton::myMethod(){
mMainClass->someMethod(); // incomplete type error
}
MainClass и Singleton уже определены, когда это происходит ...