Qt自定义数据类型注册meta-object system
生活随笔
收集整理的這篇文章主要介紹了
Qt自定义数据类型注册meta-object system
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
????? 在Qt項目開發過程中,有時候會碰到需要使用自定義數據類型作為信號或者槽的參數進行數據傳輸,由于信號或者槽中的參數必須為Qt meta-object 系統中能夠識別的參數,但是自定義數據類型僅僅只是程序代碼編寫者自己知道,編譯器在編譯的過程中并不知道這種參數類型,但是Qt中提供了Q_DECLARE_METATYPE和qRegisterMetaType來實現具體的功能,具體實現如下:
//自定義數據類型 struct human {int age;QString name;QString sex; }; Q_DECLARE_METATYPE(human);???? 然后在需要使用這個自定義數據類型作為參數傳遞時,將自定義的參數頭文件包含起來,然后在使用之前將自定義數據類型注冊到元數據類型系統中,具體代碼如下:
qRegisterMetaType<human>("human"); connect( ***, ***(human), ***, ***(human));?
總結
以上是生活随笔為你收集整理的Qt自定义数据类型注册meta-object system的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 不明性不孕人工授精
- 下一篇: Qt使用invokeMethod反射机制