零聲Qt開發(fā)?備必?技術(shù)棧課完整 筆記
Qt Object Model
需要注意兩點:Qt對標準C++通過此模型進行了一定的擴展;Qt中對象的賦值和克隆完全不同,后者所做工作更多。
Meta-Object System
此特性通過Qt的moc工具,為每一個使用Qt特性的類生成一個moc對象來實現(xiàn)。它包含了Qt對C++的許多擴展性能的處理和實現(xiàn)。如:
信號和槽的機制
動態(tài)添加類屬性的機制
不通過RTTI獲取類名的機制
獲取繼承關(guān)系的機制等。
使用此特性的方法很簡單,只需在相應(yīng)的Qt類中繼承QObject,并且在開始聲明Q_OBJECT宏。編譯時,需要用moc生成相應(yīng)的moc對象實現(xiàn)的cpp文件,并鏈接;但是使用qmake工具的話,會自動生成Makefile,不用手動去做。
標簽: