一、前言
这篇文章将接着上述内容继续向下陈述,前文提到网络编程这块内容将拆分为四个内容,分别是主机信息查询、TCP通信、UDP通信和基于HTTP的网络应用程序。前篇文章已经讲述了第二个内容——《TCP通信》,接下来将继续讲述第二个内容——《UDP通信》。
对于前文的《TCP通信》的内容,可自行查看文章:C++/Qt 网络(续二)-CSDN博客
二、UDP通信
用户数据报协议(UDP)是轻量的、不可靠的、面向数据报的、无连接的协议,它可以用于可靠性要求不高的场合。与TCP通信不同,UDP通信不区分客户端和服务器端,UDP程序都是客户端程序。两个UDP客户端之间进行UDP通信时,无须预先建立持久的socket连接,UDP客户端每次发送数据报都需要指定目标地址和端口。
1、QUdpSocket类
QUdpSocket类用于实现UDP通信,它与QTcpSocket具有相同的父类QAbstractSocket,因而这两个类共享大部分的接口函数(见前文的表《QAbstractSocket类用于TCP通信的主要接口函数》)。这两个类的主要区别是QUdpSocket以数据报传输数据,而不是以连续的数据流传输数据。QUdpSocket::writeDatagram()函数用于发送数据报,数据报一般少于512个字节,每个数据报包含发送者和接收者的IP地址和端口信息。
程序若要实现