找回密码
 立即注册
收起左侧

关于书上UDP这一节的一个问题

5
回复
8233
查看
[复制链接]

尚未签到

来源: 2013-5-2 10:58:10 显示全部楼层 |阅读模式
1Qter豆
我看的是Qt 快速入门这一本书,其中书上420页的一段代码:
sender->writeDatagram(datagram.data(),datagram.size(),QHostAddress::Broadcast,45454);
其中不太懂QHostAddress::Broadcast 这个参数,我的理解是向本机发送一个广播,只有本机才可以接受到,是吗?比如说我把接收端放到朋友的电脑上运行,怎么才能发送给他数据呢,我和他不在一个局域网。

最佳答案

查看完整内容

QHostAddress::Broadcast其实就是QHostAddress("255.255.255.255"),实现在同一个网段的广播,主要用于局域网!如果是公网,实现QQ一样的聊天通信,需要进行一定的设置。
回复

使用道具 举报

累计签到:1570 天
连续签到:1 天
2013-5-2 10:58:11 显示全部楼层
QHostAddress::Broadcast其实就是QHostAddress("255.255.255.255"),实现在同一个网段的广播,主要用于局域网!如果是公网,实现QQ一样的聊天通信,需要进行一定的设置。
回复

使用道具 举报

累计签到:181 天
连续签到:1 天
2013-5-2 12:45:24 显示全部楼层
广播是给局域网内所有主机听的。并不是只有自己可以听到,如果不在一个局域网内,通信是有问题的。建议在同一个局域网内进行通信。
回复

使用道具 举报

尚未签到

2013-5-2 13:31:25 显示全部楼层
hzzhou 发表于 2013-5-2 12:45
广播是给局域网内所有主机听的。并不是只有自己可以听到,如果不在一个局域网内,通信是有问题的。建议在同 ...

如果不在一个局域网之内呢?如何通信?
回复

使用道具 举报

累计签到:181 天
连续签到:1 天
2013-5-2 13:45:59 显示全部楼层
如果不在一个局域网内通信就比较麻烦了,但也可以实现,可以通过端口映射来实现。建议你看一些计算机网络相关的知识。
回复

使用道具 举报

累计签到:15 天
连续签到:1 天
2013-5-2 16:58:03 显示全部楼层
QHostAddress::Broadcast其实就是QHostAddress("255.255.255.255"),实现在同一个网段的广播,主要用于局域网!如果是公网,需要进行一定的设置。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了