我沒想到要改QtCore

Qt的類型系統(tǒng)設(shè)計(jì)的很精妙,本身的200多個(gè)class/struct都已經(jīng)注冊(cè),1024后的index留給了用戶注冊(cè),都是在運(yùn)行的時(shí)候注冊(cè),同時(shí)注冊(cè)了Destruct和Construct,為了后面的placement new留好了接口。
如果作為獨(dú)立的app是沒有問題的,QAppliction和程序?qū)儆谕粋€(gè)生命周期,同時(shí)消亡同時(shí)誕生,沒有彼此的分別,但作為插件,比如在Microstaion平臺(tái)上,Microstaion在對(duì)話期一直存在一個(gè)QApplication實(shí)例,但各個(gè)插件可以在卸載與加載之間往復(fù),QMetaType則對(duì)此欠考慮,如果一個(gè)插件卸載,則它的類型和Destruct和Construct都還存在,在重新加載插件后,用接口創(chuàng)建的時(shí)候,還是舊的地址,如果插件的地址還是舊的地址,則Destruct和Construct都還有效,反之,則會(huì)crash。
這些注冊(cè)的類型沒有接口刪除,唯一的一個(gè)接口,還不能刪除由Q_DECLEAR_METETYPE 聲明的類型,只能刪除由qRegisterMetaType注冊(cè)的類型...
只能動(dòng)動(dòng)Qt的根了,那就是QtCore模塊,QtCore是所有其他模塊的基礎(chǔ)包括GUI模塊。
能修改源碼的自由度,是使用閉源庫的兄弟不能理解的幸福啊。。。
雖然編譯整個(gè)庫需要幾個(gè)小時(shí),編譯QtCore卻只要幾分鐘。。。
讓我的Qt插件在Microstation上飛。。。


xyz.png

view1.jpg
view2.jpg

圖中的插件是QCustomPlot,對(duì)大數(shù)據(jù)兼容好,整個(gè)庫也很小,和QCharts和qwt一樣,他們作為插件使用的時(shí)候都有bugs,我只是改正了QCustomPlot的問題,其他兩個(gè)改不動(dòng),放棄掙扎了。。。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1. PHP執(zhí)行的時(shí)候有如下執(zhí)行過程:Scanning(Lexing) - Compilation - Execu...
    Yohann丶blog閱讀 746評(píng)論 0 0
  • 15.Qt 和 C++(Qt and C++) 本章的作者:jryannel ** 注意: **最新的構(gòu)建時(shí)間:2...
    趙者也閱讀 1,286評(píng)論 0 3
  • PHP專業(yè)面試題匯總一、PHP基礎(chǔ):二、數(shù)據(jù)庫部分三、面向?qū)ο蟛糠炙?、ThinkPHP部分五、smarty模板引擎...
    非資深技術(shù)人閱讀 177評(píng)論 0 0
  • 深刻理解SOA架構(gòu)體系 有主流內(nèi)存及文件搜索引擎(ElasticSearch、Solr、Sphnix)使用和調(diào)優(yōu)經(jīng)...
    肥仔_8ab6閱讀 570評(píng)論 0 0
  • 1、PHP語言的一大優(yōu)勢(shì)是跨平臺(tái),什么是跨平臺(tái)?一、PHP基礎(chǔ): PHP的運(yùn)行環(huán)境最優(yōu)搭配為Apache+MySQ...
    __書山有路__閱讀 1,612評(píng)論 0 15

友情鏈接更多精彩內(nèi)容