Вот пример набросал:
//parent.h
#pragma once
#include <QObject>
#include "child.h"
class Parent : public QObject {
Q_OBJECT
public:
Parent() : QObject()
{
child = new Child(this);
}
private:
Child *child;
};
//child.h
#pragma once
#include <QObject>
#include "parent.h"
class Parent;
class Child : public QObject {
Q_OBJECT
public:
Child(Parent *_parent) : QObject(_parent), parentPtr(_parent)
{}
private:
Parent *parentPtr;
};
Компилятор в Qt (MinGW 4.9) выплевывает ошибку
C:\Users\Winner\Documents\example\child.h:11: ошибка: no matching function for call to 'QObject::QObject(Parent*&)'
Child(Parent *_parent) : QObject(_parent), parentPtr(_parent)
^
Как поправить код, чтобы все заработало? Буду премного благодарен