【发布时间】:2014-10-06 11:05:21
【问题描述】:
pro:
QT += core gui sql
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
TARGET = Game
TEMPLATE = app
SOURCES += main.cpp\
mainwindow.cpp
HEADERS += mainwindow.h
mainwindow.cpp:
#include "QtSql"
#include "QSqlDatabase"
//#include "QtDebug"
//#include "QFileInfo"
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
{
mydb = new QSqlDatabase::addDatabase("QSQLITE"); <------- ERROR LINE
mydb->setDatabaseName("C:/sqllite2/bazadannyh.sqlite");
bool ok = mydb->open();
widget = new QWidget();
mainwindow.h:
#include <QSqlDatabase>
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = 0);
~MainWindow();
QString *s;
QSqlDatabase *mydb;
我在这里声明了 mydb,因为否则我无法在我的公共插槽中访问它。可以吗?
main.cpp:
#include "mainwindow.h"
#include <QApplication>
#include "QtGui"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
}
我选择声明数据库的地方是否正确?还是应该改?
错误:mainwindow.cpp:19:错误:预期的类型说明符 mydb = new QSqlDatabase::addDatabase("QSQLITE"); 预期的 ';'
帮帮我!我该怎么办?
【问题讨论】: