天天看點

分析21個 Qt隐藏功能和技巧

分析21個 qt 隐藏功能和技巧是本文将要介紹的内容,一一詳細的羅列出來,以友善大家閱讀友善。

q_gadget:不需要從qobject繼承就可以使用qt的meta object功能

q_enums:對枚舉對象進行反射(reflection)

q_signal:不需要signals關鍵字就可以将一個函數指定為singal函數

q_slot:不需要slots關鍵字就可以将一個函數指定為slot函數

q_foreach:qt提供的關鍵字foreach在配置檔案裡面定義了no_keywords的時候就失效了,而q_foreach宏無論何時都有效

q_forever:原因同q_foreach,用法和關鍵字forever一樣

qchecksum:計算基于crc-16-ccitt算法的crc-16校驗碼

qcompress/quncompress:基于zlib的算法對位元組緩存區進行壓縮/解壓,可以自定義壓縮比

qdeleteall:對容器或者疊代器中的每個對象進行delete操作

qround/qround64:對浮點數取整,四舍五入

qfuzzycompare:線程安全的浮點數模糊比較,處理了浮點精度誤差的問題

qversion:擷取目前正在運作的qt的版本号

sender:在slot函數中調用可以擷取發送該signal的對象。僅用于來自同一線程的qt::directconnection連接配接的signal。由于這種做法破壞了面向對象的原則,慎用!

qsysinfo:擷取目前運作的系統資訊,包括版本号等,mac/symbian/windows均适用

qtendian:處理不同體系架構下位元組存儲次序不同的問題

qobject::findchildren<>:找出隐藏的子對象

qobject_cast:不需要編譯器rtti的支援就可以實作c++标準庫dynamic_cast的功能

qobject::deletelater:在事件處理循環中調用,則在事件處理循環結束時删除自己;在事件處理循環外調用,則在下一個事件處理循環開始時删除自己

qprintable:類似qstring::tolocal8bit()::constdata(),但是更好記

qdebug():類似windows下的trace或者outputdebugstring

connect(someobj, signal(foo()), signal(bar()):通過一個signal自動觸發另一個signal。

小結:分析21個 qt 隐藏功能和技巧的内容介紹完了,希望本文會對你有所幫助!

上一篇: 其他
下一篇: LAMP安裝腳本