Qt错误——error:no matching function for call to (类名)::connect()解决办法

初学qt的时候发现如下错误:

1.错误代码

connect(zt,&Teacher::hungry,st,&Student::treat);

执行上面语句,出现如下错误

error: no matching function for call to ‘Widget::connect(Teacher*&, <unresolved overloaded function type>, Student*&, void (Student::*)())’
  
 2.错误原因

问题原因是在进行响应调用的时候,不知道该调用哪个函数说明出现函数重载

打开teacher.h头文件

 

 信号与槽函数对应的时候,有几点需要注意:

1.在信号与槽函数的参数数量相同时,它们参数类型要完全一致。

2.信号参数个数必须比槽函数个数多。

综上,保留16行无参函数,删除17行,问题解决。