1. Q_GADGET:不需要從QObject繼承就可以使用Qt的Meta Object功能
2. Q_ENUMS:對枚舉對象進行反射(reflection)
3. Q_SIGNAL:不需要signals關鍵字就可以將一個函數指定為singal函數
4. Q_SLOT:不需要slots關鍵字就可以將一個函數指定為slot函數
5. Q_FOREACH:Qt提供的關鍵字foreach在配置文件里面定義了no_keywords的時候就失效了,而Q_FOREACH宏無論何時都有效
6. Q_FOREVER:原因同Q_FOREACH,用法和關鍵字forever一樣
7. qChecksum:計算基於CRC-16-CCITT算法的CRC-16校驗碼
8. qCompress/qUncompress:基於zlib的算法對字節緩存區進行壓縮/解壓,可以自定義壓縮比
9. qDeleteAll:對容器或者迭代器中的每個對象進行delete操作
10. qRound/qRound64:對浮點數取整,四舍五入
11. qFuzzyCompare:線程安全的浮點數模糊比較,處理了浮點精度誤差的問題
12. qVersion:獲取當前正在運行的Qt的版本號
13. sender:在slot函數中調用可以獲取發送該signal的對象。僅用於來自同一線程的Qt::DirectConnection連接的 signal。由於這種做法破壞了面向對象的原則,慎用!
14. QSysInfo:獲取當前運行的系統信息,包括版本號等,Mac/Symbian/Windows均適用
15. QtEndian:處理不同體系架構下字節存儲次序不同的問題
16. QObject::findChildren<>:找出隱藏的子對象
17. qobject_cast:不需要編譯器RTTI的支持就可以實現C++標准庫dynamic_cast的功能
18. QObject::deleteLater:在事件處理循環中調用,則在事件處理循環結束時刪除自己;在事件處理循環外調用,則在下一個事件處理循環開始時刪除自己
19. qPrintable:類似QString::toLocal8Bit()::constData(),但是更好記
20. qDebug():類似Windows下的TRACE或者OutputDebugString
21. connect(SomeObj, SIGNAL(foo()), SIGNAL(bar()):通過一個signal自動觸發另一個signal。
http://www.qtcn.org/bbs/read-htm-tid-64544.html