首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > QT开发 >

( 急) Qt build时出现一个异常 求解决办法

2013-07-01 
(在线等急!) Qt build时出现一个错误求解决方法代码如下:头文件connection.h:#ifndef CONNECTION_H#define

(在线等 急!) Qt build时出现一个错误 求解决方法
(  急) Qt build时出现一个异常  求解决办法


代码如下:

头文件connection.h:

#ifndef CONNECTION_H
#define CONNECTION_H
#ifndef CONNECTION_H


#define CONNECTION_H
#include <QMessageBox>
#include <QSqlDatabase>
#include <QSqlQuery>

static bool createConnection()
{
    QSqlDatabase db = QSqlDatabase::addDatabase(“QSQLITE”);
    db.setDatabaseName(“:memory:”);
    if (!db.open()) {
        QMessageBox::critical(0, qApp->tr(“Cannot open database”),
            qApp->tr(“Unable to establish a database connection.”
                     ), QMessageBox::Cancel);
        return false;
    }

    QSqlQuery query;
    query.exec(“create table student (id int primary key, ”
               “name varchar(20))”);
    query.exec(“insert into student values(0, ‘first’)”);
    query.exec(“insert into student values(1, ‘second’)”);
    query.exec(“insert into student values(2, ‘third’)”);
    query.exec(“insert into student values(3, ‘fourth’)”);
    query.exec(“insert into student values(4, ‘fifth’)”);
    return true;
}
#endif // CONNECTION_H


头文件widget.h
#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>

namespace Ui {
class Widget;
}

class Widget : public QWidget
{
    Q_OBJECT
    
public:
    explicit Widget(QWidget *parent = 0);
    ~Widget();
    
private:
    Ui::Widget *ui;
};

#endif // WIDGET_H



源文件main.cpp:

#include "widget.h"
#include "connection.h"
#include <QApplication>
#include <QtGui>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    if (!createConnection())
        return 1;
    Widget w;
    w.show();
    
    return a.exec();
}

源文件widget.cpp

#include "widget.h"
#include "ui_widget.h"
#include <QSqlQuery>
#include <QtDebug>

Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
{
    ui->setupUi(this);
}

Widget::~Widget()
{
    delete ui;
}
Qt UI

数据库 类
[解决办法]
#ifndef CONNECTION_H


#define CONNECTION_H

多了2个这个。我把你static 函数里面注释掉了 去掉上面多余的2个@ifndef能编过 mingw编译器

热点排行