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() 行です。これが何を意味し、何ができるかをGoogleで調べようとしましたが、見つけたコメントはあまり役に立ちませんでした.

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 に答える