Qt使用信号与槽时出现的错误“Incompatible sender/receiver arguments”
生活随笔
收集整理的這篇文章主要介紹了
Qt使用信号与槽时出现的错误“Incompatible sender/receiver arguments”
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
在學(xué)習(xí)使用qt的過程中,沒有好好的去了解信號與槽的機(jī)制,導(dǎo)致出現(xiàn)了這么一段代碼:
connect(timer1, SIGNAL(timeout()), this, SLOT(exeMonitor(QString)));在編譯時(shí)沒有出現(xiàn)錯(cuò)誤,但當(dāng)觸發(fā)該信號時(shí)輸出框顯示:
即:矛盾的發(fā)送/接收參數(shù)。
在仔細(xì)了解了信號與槽之后發(fā)現(xiàn),不管是調(diào)用系統(tǒng)的還是自定義,信號和槽函數(shù)參數(shù)類型要一致,由于timeout()是無參數(shù)的,exeMonitor(Qstring )包含一個(gè)參數(shù)類型,所以會(huì)報(bào)錯(cuò)。改成exeMonitor()并將相應(yīng)的槽函數(shù)修改之后成功運(yùn)行。
另外,信號與槽函數(shù)都不能傳參,所以類似exeMonitor(Qstring fileName)這樣的函數(shù)也是錯(cuò)誤的。
?
轉(zhuǎn)載于:https://www.cnblogs.com/zweihn/p/8143532.html
總結(jié)
以上是生活随笔為你收集整理的Qt使用信号与槽时出现的错误“Incompatible sender/receiver arguments”的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用MATLAB进行二次规划求解最优值
- 下一篇: mongodb mongoose 常用操