неполная ошибка типа в синглтоне - PullRequest
0 голосов
/ 22 февраля 2012

Мне нужен указатель на мой основной класс из одноэлементного класса. Заголовок синглтон-класса включен в основной класс.

В 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 уже определены, когда это происходит ...

1 Ответ

1 голос
/ 22 февраля 2012

Похоже, вы не включили mainclass.h в singleton.cpp.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...