[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中网络编程的相关内容。如下图所示。

31-1.jpg 

Qt
提供了QtNetwork模块来进行网络编程。该模块提供了诸如QFtp等类来实现特定的应用层协议;有较低层次的类,例如QTcpSocketQTcpServerQUdpSocket等来表示低层的网络概念;还有高层次的类,例如QNetworkRequestQNetworkReplyQNetworkAccessManager使用相同的协议来执行网络操作;也提供了QNetworkConfigurationQNetworkConfigurationManagerQNetworkSession等类来实现负载管理。


2.
在文档的后面提供了Qt中用于网络编程的类的列表。如下图所示。

31-2.jpg


3. 
如果大家以前就使用过Qt进行网络部分编程,或者看过其他教材上相关内容,你可能会问,这里怎么没有了QHttp类。我们现在搜索QHttp关键字,其内容如下。

31-3.jpg

可以看到这里有一个警告:
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分类中。如下图所示。

31-4.jpg
       
进入Networking分类,如下图所示。

31-5.jpg

最后要说明的是:如果要使用QtNetwork模块中的类,需要在项目文件中添加QT+= network一行代码。


结语

       
后面的教程中我们将对Qt网络编程部分的知识点分别进行讲解,对Qt中网络编程内容有了初步了解以后,我们就开始下一步的学习吧。
相关文章
|
1月前
|
网络协议 Shell Linux
【Shell 命令集合 网络通讯 】Linux 设置和配置PPP pppsetup命令 使用教程
【Shell 命令集合 网络通讯 】Linux 设置和配置PPP pppsetup命令 使用教程
39 0
|
1月前
|
网络协议 Shell Linux
【Shell 命令集合 网络通讯 】Linux 创建网络连接 nc命令 使用教程
【Shell 命令集合 网络通讯 】Linux 创建网络连接 nc命令 使用教程
37 1
|
12天前
|
网络协议 Java API
Python网络编程基础(Socket编程)Twisted框架简介
【4月更文挑战第12天】在网络编程的实践中,除了使用基本的Socket API之外,还有许多高级的网络编程库可以帮助我们更高效地构建复杂和健壮的网络应用。这些库通常提供了异步IO、事件驱动、协议实现等高级功能,使得开发者能够专注于业务逻辑的实现,而不用过多关注底层的网络细节。
|
14天前
|
安全 网络协议 物联网
计算机网络基础教程:类型
【4月更文挑战第5天】
24 2
 计算机网络基础教程:类型
|
15天前
|
传感器 监控 安全
|
15天前
|
存储 网络协议 Linux
|
15天前
|
安全 SDN 数据中心
|
16天前
|
网络协议 安全 网络性能优化
|
20天前
|
数据采集 网络协议 API
python中其他网络相关的模块和库简介
【4月更文挑战第4天】Python网络编程有多个流行模块和库,如requests提供简洁的HTTP客户端API,支持多种HTTP方法和自动处理复杂功能;Scrapy是高效的网络爬虫框架,适用于数据挖掘和自动化测试;aiohttp基于asyncio的异步HTTP库,用于构建高性能Web应用;Twisted是事件驱动的网络引擎,支持多种协议和异步编程;Flask和Django分别是轻量级和全栈Web框架,方便构建不同规模的Web应用。这些工具使网络编程更简单和高效。
|
1月前
|
存储 Shell Linux
【Shell 命令集合 网络通讯 】⭐Linux 显示当前系统的主机名和操作系统类型 uuname命令 使用教程
【Shell 命令集合 网络通讯 】⭐Linux 显示当前系统的主机名和操作系统类型 uuname命令 使用教程
29 0

热门文章

最新文章

推荐镜像

更多