Ошибка с резким закрытием программы в QT creator при создании Змейки
На этапе компиляции вылетает ошибка
The program has unexpectedly finished.
The process was ended forcefully.
Fruit.h
#define FRUIT_H
#include <QGraphicsItem>
#include <QGradient>
class Fruit : public QGraphicsEllipseItem
{
public:
Fruit(QGraphicsItem *parent = nullptr);
private:
int time;
QPoint point;
QGraphicsEllipseItem* elipse;
QRadialGradient radi;
signals:
};
#endif // FRUIT_H
Snakegame.h
#define SNAKEGAME_H
#include <QGraphicsView>
class Snakegame : public QGraphicsView
{
public:
Snakegame(QWidget* parent = nullptr);
QGraphicsScene* scene;
private:
};
#endif // SNAKEGAME_H
Fruit.cpp
Fruit::Fruit(QGraphicsItem *parent):QGraphicsEllipseItem(parent)
{
elipse->setRect(0,0,100,100);
radi.setColorAt(0,Qt::blue);
radi.setColorAt(0.5,Qt::green);
radi.setColorAt(1,Qt::red);
elipse->setBrush(radi);
}
snakegame.cpp
#include <fruit.h>
Snakegame::Snakegame(QWidget* parent):QGraphicsView(parent)
{
Fruit *fru = new Fruit();
scene->addItem(fru);
scene = new QGraphicsScene(this);
setScene(scene);
show();
}
main.cpp
#include <fruit.h>
#include <QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
Snakegame *snakegame = new Snakegame();
return a.exec();
}
Ответы (1 шт):
Автор решения: Andrej Levkovitch
→ Ссылка
Ну вот неужели сложно просто посмотреть те пару строк что вы написали прежде чем публиковать вопрос?
scene->addItem(fru);
scene = new QGraphicsScene(this);
У вас банальное обращение по невалидному указателю
PS освойте дебагер