信号和槽之间参数传递是有要求的,以下几种情况,信号和槽能够正常连接
1、信号和槽参数类型、数量完全一致
2、信号的参数表比槽的参数表数量多,但是,从信号的参数表第一个参数开始,能够与槽的参数表完全对应,信号中多出的参数,将被槽忽略。
另外:
(1)一般的,函数指针不能作为参数传递;
(2)模板类对象不能作为参数传递;
但是:
有变通的方法,使用qRegistMetaType函数,将模板类注册为元类型,则可以传递:
代码:
#include<QMetaType>
qRegistMetaType<QList<void*>>("QList<void*>)
则可以使用QList<void*>类型作为参数在从信号向槽传递数据。