Ошибка сегментации в qt при выделении памяти

После запуска мое приложение вылетает. В режиме отладки на линии mManager = new QNetworkAccessManager(this); Появляется окно, сообщающее о сбое сегментации:

Окно ошибки сегментации

Кроме того, в выходных данных приложения у меня есть много строк:

не может найти символ компоновщика для виртуальной таблицы для значения 'QNetworkAccessManager' найдено 'QCoreApplication::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)' вместо

Дать мой код ниже.

myclass.h

class MyClass: public QObject
{
    Q_OBJECT
public:
    explicit MyClass(QObject *parent = 0);

public slots:
    void parseJSON(QNetworkReply *response);

private:
    QNetworkAccessManager *mManager;
};

myclass.cpp

MyClass::MyClass(QObject *parent) :
    QObject(parent)
   ,mManager{nullptr}
{
    mManager = new QNetworkAccessManager(this);
    connect(mManager, SIGNAL(finished(QNetworkReply*)),
            this, SLOT(parseJSON(QNetworkReply*)));
    std::cout << "Getting object from server..." << std::endl;
    mManager->get(QNetworkRequest(QUrl("http://some.url.com/cpp.json")));
}

void MyClass::parseJSON(QNetworkReply* response)
{
}

main.cpp

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

    MyClass proc;

    return a.exec();
}

ОБНОВЛЕНИЕ (1): эта проблема возникла после ~10-й сборки, до того как она не возникла.
ОБНОВЛЕНИЕ (2): после очистки и восстановления проекта все работало правильно. Я не понимаю, в чем была проблема.

0 ответов

Другие вопросы по тегам