Конструктор по умолчанию для QObject
должен быть закрытым, и ошибка, с которой вы сталкиваетесь, весьма вероятно связана с CHIProjectData::CHIProjectData
(конструктором по умолчанию), неявно пытающимся вызвать конструктор по умолчанию базового класса.Если вы посмотрите на QObject
, вы, скорее всего, обнаружите, что оно определено примерно так:
class QObject {
QObject(); //private contructor, derived classes cannot call this constructor
public:
QObject(QObject* aParent);
};
Решение состоит в том, чтобы сделать конструктор по умолчанию QObject
защищенным или общедоступным, или вызвать перегрузку другого конструктора из значения по умолчанию CHIProjectData
конструктор:
CHIProjectData::CHIProjectData() : QObject(NULL){
}