有關信號和槽之間參數傳遞的問題(原創)

信號和槽之間參數傳遞是有要求的,以下幾種情況,信號和槽能夠正常連接

1、信號和槽參數類型、數量完全一致

2、信號的參數表比槽的參數表數量多,但是,從信號的參數表第一個參數開始,能夠與槽的參數表完全對應,信號中多出的參數,將被槽忽略。

另外:

(1)一般的,指針不能作爲參數傳遞;

(2)模板類對象不能作爲參數傳遞;

但是:

有變通的方法,使用qRegistMetaType函數,將模板類註冊爲元類型,則可以傳遞:

代碼:

#include<QMetaType>

qRegistMetaType<QList<void*>>("QList<void*>)

則可以使用QList<void*>類型作爲參數在從信號向槽傳遞數據。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章