#include <QObject>
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "addDialog.h"
#include <QMessageBox>
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
setFixedSize(this->width(), this->height());
addDialog addD();
editDialog editD();
QObject::connect(&editD, &editDialog::sendData,
this, &MainWindow::get_data_from_edit);
QObject::connect(&addD, &addDialog::sendData,
this, &MainWindow::get_data_from_add);
}
兩個connect都報錯誤
error: no matching function for call to 'MainWindow::connect(editDialog (*)(), void (editDialog::*)(QString), MainWindow*, void (MainWindow::*)(QString))'
this, &MainWindow::get_data_from_edit);
^
In file included from D:\QT.9\mingw53_32\include\QtCore/QObject:1:0,
from mainwindow.cpp:3:
error: no type named 'type' in 'struct std::enable_if<false, QMetaObject::Connection>'
所使用類別均繼承QObject並包含Q_OBJECT
使用舊語法仍然報錯
addDialog addD();
editDialog editD();
這兩句是實例2個物件嘛?把()去掉試試。
樓主,你把MainWindow::get_data_from_edit和MainWindow::get_data_from_add的方法宣告貼出來。