error: no matching function for call to 'Ui::GoToCellDialog::setupUi(QDialog*&)' ui.setupUi(dialog); ^

环境:Qt5.3

参考书是:C++ GUI Qt4编程

问题描述:

按照书中的例子2-2做,编译时遇到的问题,从字面意思看是没有匹配的函数可用,UI::GotoCellDialog类是自动生成的,所以打开它的源码文件发现,声明的函数setupUi参数是QMainWindow *,所以传入QDialog当然出错了,修改一下就可以了。

疑惑:

Qt里面经常遇到这样的问题,书上写的,照着去做都能出错,可能是因为版本问题吧,但是这样做也太坑了,为什么不向下兼容呢?不理解。。。

原文地址:https://www.cnblogs.com/lit10050528/p/3872500.html