回答
其實我已經讀到它這個Qt的頁面,它也解釋了良好的工作:
我們有些回答了你的其他問題
Why does Qt use its own make tool, qmake?
但進入稍微更詳細,商務部解析您的文件尋找信號/槽聲明(以及屬性和其他支持結構)並基於這些生成中間代碼文件。這些中間代碼文件提供對信號和插槽的強類型訪問,以便庫用於與對象進行通信。
qmake生成一個自動包含這些中間文件(以及生成的任何UI或資源文件)以及自己的代碼的makefile,以便您可以使用您選擇的工具鏈進行構建。
正如其他人說,有供這個話題很好的Qt documetnation。如果你想知道引擎蓋下發生了什麼,這個信息可能會幫助你:
插槽只是常規的方法。除此之外沒有什麼特別的,除了moc會將它們的簽名保存在中間.moc文件的表格中 - 當你瀏覽這個文件時,你可以很清楚地看到這個表格。
此表格允許您使用它的簽名來調用方法。宏可以歸結爲所討論的方法的字符串表示。有幾種方法可以執行此操作,例如,請參閱QMetaObject的文檔。
當您將信號連接到插槽時,會將信號和插槽簽名存儲起來供以後使用。當發出信號時,先前連接到該信號的所有時隙都使用上述方法調用。
如果您想了解更多信息,建議您查看moc生成的代碼,並逐步查看信號發射和connect()調用的內部信息。這裏沒有魔法,但有很多聰明之處。
很多的小聰明,但沒有魔法!讓我想起http://catb.org/esr/jargon/html/magic-story.html – jrharshath 2009-09-24 14:24:50
那裏有兩種類型的連接。第一個:在發射信號時調用插槽。第二個:插槽調用放置在事件循環隊列中。您可以在連接中手動選擇方法,但連接來自不同線程的信號和插槽始終排隊。 – JustAnotherCurious 2013-04-30 11:01:04
- 1. 初學Qt信號和插槽問題
- 2. QT信號插槽不工作
- 3. QT連接插槽/信號不工作
- 4. QT信號和插槽
- 5. 信號和插槽QT
- 6. QT信號/插槽
- 7. Qt如何實現信號和插槽?
- 8. Qt信號插槽:信號已發送,但未插入插槽
- 9. Qt連接信號插槽
- 10. 關於qt中的信號和插槽
- 11. QT信號和插槽意外錯誤
- 12. Qt信號和插槽對象斷開?
- 13. QT中的信號和插槽
- 14. Qt - 兩類中的信號和插槽
- 15. QT信號和插槽功能簽名
- 16. Qt信號/插槽和線程
- 17. C++ Qt設置信號和插槽QMenu
- 18. 可視化QT信號和插槽
- 19. 信號和插槽幫助QT
- 20. 調試Qt信號,插槽和連接
- 21. Qt插槽和信號。獲取插槽接收器對象
- 22. 信號和插槽
- 23. 使用Qt信號/插槽而不是工作線程
- 24. Qt插槽是如何工作的。 PySide
- 25. 如何跟蹤Qt中的信號和插槽?
- 26. QT中的信號和插槽之間的連接如何?
- 27. 如何連接Qt中不同對象的信號和插槽?
- 28. 如何使用線程Qt網絡中的信號和插槽?
- 29. Qt將信號連接到插槽
- 30. qt,信號插槽沒有連接?
我得到癢這個拼寫太..上帝知道爲什麼 – jrharshath 2009-09-24 14:25:44