Простая программа qt, не запущенная с сообщением об ошибке "Ошибка сегментации"
Успешно скомпилировать его, но когда я его запустил, терминал дал мне сообщение "Ошибка сегментации (ядро сброшено)". Я использую компилятор g++ на Ubuntu.
Код является:
#include <QApplication>
#include <QLabel>
#include <QLineEdit>
#include <QVBoxLayout>
#include <QWidget>
int main(int argc, char** argv){
QApplication app(argc, argv);
QWidget window;
QLabel *label = new QLabel;
QLineEdit *edit = new QLineEdit;
QObject::connect(edit, SIGNAL(textChanged(const QString&)), label, SLOT(setText(const QString&)));
QVBoxLayout *layout;
layout->addWidget(edit);
layout->addWidget(label);
window.setLayout(layout);
window.show();
return app.exec();
}
1 ответ
Решение
QVBoxLayout *layout
не инициализирован, вы используете неинициализированный указатель.
Правильный путь:
QVBoxLayout *layout = new QVBoxLayout;
// use layout..