После того, как я переместил QObject
классы во вложенные пространства имен, метод moveToThread
начал выдавать мне ошибку:
не может инициализировать параметр объекта типа 'QObject' с помощью выражения типа 'Parsers :: Downloaders :: YouTube'
Из этой ошибки я понял, что могу не сделать QObject
класс во вложенном пространстве имен. Заголовочный файл для Parsers::Downloaders::YouTube
класса:
namespace Parsers::Downloaders
{
class YouTube : public Parsers::DownloaderClass
{
Q_OBJECT
// some stuf here
};
}
DownloaderClass
получено из QObject
класса. Могу ли я каким-то образом иметь QObject
производный класс во вложенном пространстве имен? Пример:
QThread *thread = new QThread();
Parsers::Downloaders::YouTube *api = new Parsers::Downloaders::YouTube();
api->moveToThread(thread);
Я использую Qt 5.14.1.