当前位置: 代码迷 >> 综合 >> Qt Creator 报错 moc_mainwindow.cpp:-1: error: undefined reference to `MainWindow::mouseDoubleClickEven
  详细解决方案

Qt Creator 报错 moc_mainwindow.cpp:-1: error: undefined reference to `MainWindow::mouseDoubleClickEven

热度:44   发布时间:2024-02-08 18:09:19.0

尝试按照《Qt5开发及实例》运行鼠标事件程序。报错。

moc_mainwindow.cpp:-1: error: undefined reference to `MainWindow::mouseDoubleClickEvent(QMouseEvent*)'

中文提示:找不到moc_mainwindows.cpp文件

产生该问题的根本原因是:

在mainwindow.h文件中声明了 void mouseDoubleClickEvent(QMouseEvent *e);

但在对应的 mainwindow.cpp文件中并没有做对应的实现。

因此,应当在mainwindows.cpp文件中 做对应的实现,哪怕函数体内部啥也不写

void MainWindow::mouseDoubleClickEvent(QMouseEvent *e){}

 

另外,关于为什么没有对QMouseEvent *e进行实例化,像mousePressEvent ()方法也能够实现相应的操作:因为在父类中已经对这些方法进行了实现,在这里只是对它进行一个override,父类中会自动调用override的这些方法,并传入参数。

 

  相关解决方案