0

在 Qt Creator 中做我的第一步并且已经迷失了:

对于 Qt 向导中一个基本的,否则未更改的启动应用程序,我已添加sql到项目文件中

QT       += core gui sql

和下面的行mainwindow.cpp

#include <QSqlDatabase>

QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
db.setDatabaseName("/home/vaettchen/testSQL/myDB.sqlite");
bool db_ok = db.open();

根据 Qt WebSite 和 SO 上的各种消息来源,我曾预计会这样做。但我得到一个编译器错误

../testSQL/mainwindow.cpp:20:1: error: 'db' does not name a type

其中第 20 行是 db.setDataBaseName() 行。我试图通过谷歌找出这意味着什么以及可以做些什么,但我发现的评论不是很有用。

在 Linux 3.5 上使用 Qt Creator 2.7.0 (Qt 4.8.4)

4

1 回答 1

1

编译器似乎试图将 'db' 解释为一种类型,这让我相信第 19-21 行不在函数中。

#include "mainwindow.h"    
#include "ui_mainwindow.h"
#include <QSqlDatabase>

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

    QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
    db.setDatabaseName("/home/vaettchen/testSQL/myDB.sqlite");
    bool db_ok = db.open();
}
于 2013-06-26T06:34:28.443 回答