Znajdź główną przyczynę „nie można uzyskać dostępu do prywatnego członka zadeklarowanego w klasie„ QObject ””

Rozumiem, dlaczego dostajęC2248: 'QObject::QObject' : cannot access private member declared in class 'QObject' . Obiekty Qt nie są kopiowalne, jak wyjaśniono tutaj:

https://stackoverflow.com/a/3513395/356726Brak konstruktora kopii lub operatora przypisania

Theproblem jest to, że komunikat kompilatora zawsze wskazuje ostatnią linię (zamykającą}) klasy:

class MyQObject : public QObject {
       Q_OBJECT
       ....
}; <-- error line

Przyczyna pierwotna jest gdzie indziej, tj. gdzie klasa jest kopiowana (inny plik, inna linia w kodzie). Czasami trudno to zauważyć!Pytanie: Czy istnieje sposób na zlokalizowanie linii prawdziwego powodu błędu

Uwaga: Uwaga, zanim zaznaczysz ten duplikat. Pytanie dotyczy znalezienia pierwotnej przyczyny, a nie sposobu jej rozwiązania, jak w innych pytaniach.

--- Edytuj 1 ---

Dobra wskazówka Kuba i in. Jest to VS2010, kompilacja w Qt Creator 2.8.0

'QObject::QObject'
        C:\Qt\5.1.0-32\qtbase\include\QtCore/qobject.h(115) : see declaration of 'QObject'
        This diagnostic occurred in the compiler generated function 'MyQObject ::MyQObject (const MyQObject &)'

Zastanawiam się, dlaczego generowany jest konstruktor kopii. Jeden pomysł przemknął mi przez głowę, używam wersji Qt z włączoną opcją DBus, może to jest powód?

questionAnswers(2)

yourAnswerToTheQuestion