Qt編程可不可以結合其他的第三方庫和本土API?
比如,像boost,lokia,或者一起些其他的庫,或者結合一些WindowsAPI(不考慮跨平台),可不可以添加到qt中一起混合使用?
可以,十分可以,你可以直接包含別人的源碼,或者調用庫。
給你幾個我github上的別的庫的封裝:QAsioSocket:Qt的ASIO(封裝)替換Qt低效的QTcpServer:dushibaiyu/QAsioSocket · GitHub
QLib7Z:Qt的7z SDK的封裝,解壓壓縮7z:dushibaiyu/QLib7z · GitHubQAes:Qt的aes加密解密封裝:dushibaiyu/QAes · GitHubQRunInfo:Qt獲取系統信息的封裝:dushibaiyu/QRunInfo · GitHub然後我用過的:
nzmqt:zeroMQ的Qt封裝:jonnydee/nzmqt · GitHub qt_eventdispatcher_libev:libev-based event dispatcher for Qt :sjinks/qt_eventdispatcher_libev · GitHubQuazip:zlib的Qt封裝,壓縮解壓zip:http://quazip.sourceforge.net/還有很多呢、、國人還有個QtAV:封裝的FFMPEG,代替Qt多媒體組建:wang-bin/QtAV · GitHub
------------------------------------------------------------------------------------------------------------如果你是指庫怎麼載入,上面有說了。事件循環的注意事項上面也有。可以參考一下QPA部分,那裡基本是Qt和操作系統API集成的主要部分。
第三方庫如果沒有自己的事件循環的話,集成工作一般都比較簡單。有事件循環的,還需要特別處理一下。如果不需要在主線程的話,就開一個線程跑第三方的事件循環;如果必須在主線程的話,就需要和Qt的事件循環一起工作,可以參考QEventDispatcherGlib https://github.com/qtproject/qtbase/blob/dev/src/corelib/kernel/qeventdispatcher_glib_p.h
C++可以怎麼搞,就可以怎麼搞
我說說第三方類庫的載入吧(但我覺得系統API部分也是一樣的),其實很容易啊。只需要在.pro文件中配置一下路徑就可以了吧,難道我理解有問題?我在qt中使用過python。翻出pro來看了一眼,喏,就是這樣。boost庫也是類似。
INCLUDEPATH += D:\python27\include
LIBS += -LD:\python27\libs -lpython27
當然可以啊,Qt又沒有脫離c++的範疇
可以。
之前做課程設計的時候用Qt做界面,第三方庫用了Winpcap。開發環境是VS2013(裝了Qt的插件)。只要你把包含路徑還有庫的文件在工程屬性里設置好就可以。有頭文件加庫還有什麼不可以呢
推薦閱讀:
※為什麼代碼中的comp函數只需返回0就可以表示兩串相同?
※如何看待微軟自己的產品不用自己的庫寫而用Qt寫?
※看完《C++ Primer》和《Effective C++》能找到一份起薪 5000 元以上的工作嗎?
※C++ deallocate(pointer p,size_type n)第二個參數問題?
※C++能勝任C的所有工作嗎?不行,有哪些?