[Qt教程] 第31篇 網絡(一)Qt網絡編程簡介
樓主
發表於 2013-8-28 17:04:17 | 查看:
515| 回複: 0

Qt網絡編程簡介
版權聲明
該文章原創於作者yafeilinux,轉載請注明出處! 導語 從這一節開始我們講述Qt網絡應用方麵的編程知識。在開始這部分知識的學習之前,大家最好已經擁有了一定的網絡知識和Qt的編程基礎。在後麵的教程中我們不會對一個常用的網絡名詞進行詳細的解釋,對於不太了解的地方,大家可以參考相關書籍。 不過,大家也沒有必要非得先去學習網絡專業知識,而後再學習本部分內容,因為Qt提供了簡單明了的接口函數,使得這裏並不需要了解太多專業的知識。看完教程後,你也許會發現,自己雖然不懂網絡,但卻可以編寫網絡應用程序了。
環境:Windows Xp + Qt 4.8.5+Qt Creator 2.8.0 目錄 一、了解Qt中的網絡編程 二、查看網絡部分的例子
正文 一、了解Qt中的網絡編程 1.首先我們打開Qt Creator,進入幫助模式,然後在索引中查找:Network Programming關鍵字。這裏詳細介紹了Qt中網絡編程的相關內容。如下圖所示。 ![]() Qt提供了QtNetwork模塊來進行網絡編程。該模塊提供了諸如QFtp等類來實現特定的應用層協議;有較低層次的類,例如QTcpSocket、QTcpServer和QUdpSocket等來表示低層的網絡概念;還有高層次的類,例如QNetworkRequest、QNetworkReply和QNetworkAccessManager使用相同的協議來執行網絡操作;也提供了QNetworkConfiguration、QNetworkConfigurationManager和QNetworkSession等類來實現負載管理。 2.在文檔的後麵提供了Qt中用於網絡編程的類的列表。如下圖所示。 ![]() 3. 如果大家以前就使用過Qt進行網絡部分編程,或者看過其他教材上相關內容,你可能會問,這裏怎麼沒有了QHttp類。我們現在搜索QHttp關鍵字,其內容如下。 ![]() 可以看到這裏有一個警告: This class is obsolete. It is provided to keep old source code working. We strongly advise against using it in new code.
大概意思是:這個類是過時的。它的提供隻是為了保證舊的源代碼。我們強烈建議在新代碼中不要使用它。
所以在我們的教程中不會再講解這個類,對於HTTP部分的編程,我們使用QNetworkAccessManager類和QNetworkReply類 。
二、查看網絡部分的例子 對於網絡編程部分的例子,可以通過Qt自帶的演示程序查看。就是開始菜單中Qt安裝目錄下Example and demos程序,網絡編程例子在Networking分類中。如下圖所示。 ![]() 進入Networking分類,如下圖所示。 ![]() 最後要說明的是:如果要使用QtNetwork模塊中的類,需要在項目文件中添加QT+= network一行代碼。 結語 後麵的教程中我們將對Qt網絡編程部分的知識點分別進行講解,對Qt中網絡編程內容有了初步了解以後,我們就開始下一步的學習吧。 |
最後更新:2017-04-03 14:54:11