环境:
Qt creator 3.2.1
Qt 5.3.2
windows 7 64bit
问题:
从次线程发射信号 sig(QVector<double>),主线程中的槽rec(QVector<double>) 无响应,错误提示为:
QObject::connect: Cannot queue arguments of type 'QVector<double>'
(Make sure 'QVector<double>' is registered using qRegisterMetaType().)
(如果次线程中的信号信号改为sig(),主线程中的槽rec() 能正常收到信号,即信号和槽无参数可正常运行,而有参数QVector<double>无法正常运行。)
网上有如下解决方法,
typedef QVector<double> myVector;
qRegisterMetaType<myVector>("myVector");
但是按照此种办法,有如下错误提示:
error: specializing member '::qRegisterMetaType<myVector>' requires 'template<>' syntax
qRegisterMetaType<myVector>("myVector");
网上无法找到更进一步的解决方案。
请各位大神不吝赐教!
谢谢!
^