700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > Qt connet函数报错: error: no matching function for call to connect(QPushButton* void (QAbstractButton:

Qt connet函数报错: error: no matching function for call to connect(QPushButton* void (QAbstractButton:

时间:2020-03-14 05:45:40

相关推荐

Qt connet函数报错: error: no matching function for call to connect(QPushButton*  void (QAbstractButton:

报错代码:

connect(ui->btn_qingkong,&QPushButton::clicked,this,MainWindow::on_btn_qingkong_clicked);

报错信息:

注意里面提到了

D:\QT\myproject\commPort\mainwindow.cpp:23: error: no matching function for call to ‘MainWindow::connect(QPushButton*&, void (QAbstractButton::)(bool), MainWindowconst, )’

connect(ui->btn_JianCeChuanKou,&QPushButton::clicked,this,MainWindow::but_JianCeComm);

说明就是第四个参数的问题,这个函数无法解析

解决方法:

在第四个参数前加&符号

connect(ui->btn_qingkong,&QPushButton::clicked,this,&MainWindow::on_btn_qingkong_clicked);

后面又遇到一个错误:

connect(&global_port,&QSerialPort::readyRead,this,&receive_data);

报错信息

同样是第四个参数无法解析

并且还有如下报错:

D:\QT\myproject\commPort\mainwindow.cpp:26: error: ISO C++ forbids taking the address of an unqualified or parenthesized non-static member function to form a pointer to member function. Say ‘&MainWindow::receive_data’ [-fpermissive]

connect(&global_port,&QSerialPort::readyRead,this,&receive_data);

^

解决方法

在第四个参数前面加上命名空间

connect(&global_port,&QSerialPort::readyRead,this,&MainWindow::receive_data);

至此问题全部解决

Tip:出了问题多对照正确的代码,看看有什么区别

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。