在进行QFTP编程时候,通过QMessageBox的静态成员函数information进行打印调试。在ftp.cpp里面需要打印调试信息的地方调用:
QMessageBox::information(this,tr("ip 访问"),tr("ip 连接成功"));
然后编译程序出现err:4个重载中没有一个可以转换所有参数类型。通过不断测试与查阅资料发现是this指针的问题。因为information静态函数第一个参数类型为QWidget* parent。而我的ftp.cpp里面没有创建窗口,把this传给information,编译器无法确定其父窗口是谁。解决办法就是将this改成0,表示我就是顶层窗口,解决问题。
详细表述可以点击stackoverflow进行查看