由于标题代表我在此代码段的内容中收到此错误:
class NewTaskDialog : public QDialog
之前工作得很好,但是当我添加方法时错误开始显现:
void MainWindow::saveButtonClicked(NewTaskDialog dialogWindow)
答案 0 :(得分:0)
使用指向QDialog的指针。 QDialog类将复制构造函数定义为private,以防止您按值传递QDialog,因为您永远不应该这样做。
答案 1 :(得分:0)
saveButtonClicked
的语法会创建传递给它的NewTaskDialog
的副本。 You can't copy QWidgets除非您创建一个明确提供您所寻求的确切功能的克隆功能。 QWidget的构造函数是私有的。
您必须传递指针
void MainWindow::saveButtonClicked(NewTaskDialog* dialogWindow)
或参考。使用指针是标准的Qt方式。