当前位置: 首页 > news >正文

Roson的Qt之旅 #119 QNetworkAddressEntry详细介绍

CSDN话题挑战赛第2期
参赛话题:Qt应用程序开发


1.概述

QNetworkAddressEntry类存储了一个网络接口所支持的IP地址,以及其相关的网络掩码和广播地址。
每个网络接口可以包含零个或多个IP地址,这些地址又可以与一个掩码和/或一个广播地址相关联(取决于操作系统的支持)。
这个类代表一个这样的组。


2.成员函数文档

QNetworkAddressEntry::QNetworkAddressEntry()
构建一个空的QNetworkAddressEntry对象。


QNetworkAddressEntry::QNetworkAddressEntry( const QNetworkAddressEntry &other)

构建一个QNetworkAddressEntry对象,它是other对象的副本。


QNetworkAddressEntry::~QNetworkAddressEntry()

销毁此QNetworkAddressEntry对象。


QHostAddress QNetworkAddressEntry::broadcast() const

返回与IPv4地址和网络掩码相关的广播地址。它通常可以通过将网络掩码包含0的IP地址位设置为1而得到。(换句话说,通过将IP地址与网络掩码的倒数进行bitwise-OR。)
对于IPv6地址来说,这个成员总是空的,因为在该系统中,广播的概念已经被放弃,转而使用组播。特别是,对应于本地网络中所有节点的主机组可以通过 "all-nodes "特殊组播组(地址FF02::1)到达。
另请参见setBroadcast()。


QHostAddress QNetworkAddressEntry::ip() const

该函数返回在一个网络接口中发现的一个IPv4或IPv6地址。
也请参见setIp()。


QHostAddress QNetworkAddressEntry::netmask() const

返回与该IP地址相关的网络掩码。网络掩码以IP地址的形式表示,如255.255.0.0。
对于IPv6地址,前缀长度被转换为一个地址,其中设置为1的位数等于前缀长度。对于一个64位的前缀长度(最常见的值),网络掩码将被表示为一个持有FFF:FFF:FFF:FFF:FFF:的QHostAddress。
另请参见setNetmask()和prefixLength()。


int QNetworkAddressEntry::prefixLength() const

返回这个IP地址的前缀长度。前缀长度与网络掩码中设置为1的位数相匹配(见netmask())。对于IPv4地址,该值在0到32之间。对于IPv6地址,它包含在0到128之间,是表示地址的首选形式。
如果不能确定前缀长度,该函数返回-1(即netmask()返回空QHostAddress())。
这个函数在Qt 4.5中引入。
另请参见setPrefixLength()和netmask()。


void QNetworkAddressEntry::setBroadcast(const QHostAddress &newBroadcast)

将此QNetworkAddressEntry对象的广播IP地址设置为newBroadcast。
也请看broadcast()。

void QNetworkAddressEntry::setIp(const QHostAddress &newIp)

将QNetworkAddressEntry对象包含的IP地址设置为newIp。
也见ip()。


void QNetworkAddressEntry::setNetmask(const QHostAddress &newNetmask)

将此QNetworkAddressEntry对象包含的网络掩码设置为newNetmask。设置网络掩码的同时也设置了前缀的长度以匹配新的网络掩码。
参见netmask()和setPrefixLength()。


void QNetworkAddressEntry::setPrefixLength(int length)

将此IP地址的前缀长度设置为length。length的值对于这种类型的IP地址必须是有效的:对于IPv4地址在0到32之间,对于IPv6地址在0到128之间。设置为任何无效的值都相当于设置为-1,这意味着 "没有前缀长度"。
设置前缀长度的同时也设置了网络掩码(见netmask())。
这个函数是在Qt 4.5中引入的。
另见prefixLength()和setNetmask()。


void QNetworkAddressEntry::swap(QNetworkAddressEntry &other)

将这个网络地址条目实例与另一个交换。这个函数非常快,而且从不失败。
这个函数在Qt 5.0中被引入。


bool QNetworkAddressEntry::operator!=( const QNetworkAddressEntry &other) const

如果此网络地址条目与其他条目不同,则返回true。


QNetworkAddressEntry &QNetworkAddressEntry::operator=(QNetworkAddressEntry &&other)

移动分配运算符。


QNetworkAddressEntry &QNetworkAddressEntry::operator=(const QNetworkAddressEntry &other)

制作QNetworkAddressEntry对象other的副本。


bool QNetworkAddressEntry::operator==(Const QNetworkAddressEntry &other) const

如果此网络地址条目与其他条目相同,则返回true。

相关文章:

  • Mybatis -- 使用
  • C语言双链表,循环链表,静态链表讲解(王道版)
  • 比较zab、paxos和raft的算法的异同
  • Python Argparse 库讲解特别好的
  • C++~从编译链接的过程看为什么C++支持重载?externC有什么用?
  • App移动端测试【10】Monkey自定义脚本案例
  • springboot 整合dubbo3开发rest应用
  • 【机器学习】集成学习:使用scikitLearn中的BaggingClassifier实现bagging和pasting策略
  • 算法与数据结构 --- 串,数组和广义表 --- 串
  • 【Python Web】Flask框架(四)Bootstrap的使用及案例
  • MySQL------数据表的创建和简单、条件,模糊查询
  • 【arduino】I/O端口操作
  • 微服务项目:尚融宝(44)(核心业务流程:借款申请(1))
  • 11、Java——吃货联盟订餐系统(对象+数组)
  • Java高性能实体类转换工具MapStruct
  • ES6系列(二)变量的解构赋值
  • HTML-表单
  • IndexedDB
  • Invalidate和postInvalidate的区别
  • iOS编译提示和导航提示
  • leetcode378. Kth Smallest Element in a Sorted Matrix
  • php面试题 汇集2
  • SegmentFault 技术周刊 Vol.27 - Git 学习宝典:程序员走江湖必备
  • Spark RDD学习: aggregate函数
  • thinkphp5.1 easywechat4 微信第三方开放平台
  • 基于Mobx的多页面小程序的全局共享状态管理实践
  • 简单易用的leetcode开发测试工具(npm)
  • 让你的分享飞起来——极光推出社会化分享组件
  • 深入浅出webpack学习(1)--核心概念
  • 文本多行溢出显示...之最后一行不到行尾的解决
  • 中国人寿如何基于容器搭建金融PaaS云平台
  • 《TCP IP 详解卷1:协议》阅读笔记 - 第六章
  • 你学不懂C语言,是因为不懂编写C程序的7个步骤 ...
  • 微龛半导体获数千万Pre-A轮融资,投资方为国中创投 ...
  • ​2020 年大前端技术趋势解读
  • !!【OpenCV学习】计算两幅图像的重叠区域
  • $emit传递多个参数_PPC和MIPS指令集下二进制代码中函数参数个数的识别方法
  • $redis-setphp_redis Set命令,php操作Redis Set函数介绍
  • (22)C#传智:复习,多态虚方法抽象类接口,静态类,String与StringBuilder,集合泛型List与Dictionary,文件类,结构与类的区别
  • (day6) 319. 灯泡开关
  • (DFS + 剪枝)【洛谷P1731】 [NOI1999] 生日蛋糕
  • (Matalb分类预测)GA-BP遗传算法优化BP神经网络的多维分类预测
  • (SpringBoot)第二章:Spring创建和使用
  • (WSI分类)WSI分类文献小综述 2024
  • (附源码)springboot课程在线考试系统 毕业设计 655127
  • (免费领源码)Java#ssm#MySQL 创意商城03663-计算机毕业设计项目选题推荐
  • (亲测成功)在centos7.5上安装kvm,通过VNC远程连接并创建多台ubuntu虚拟机(ubuntu server版本)...
  • (十三)Java springcloud B2B2C o2o多用户商城 springcloud架构 - SSO单点登录之OAuth2.0 根据token获取用户信息(4)...
  • (算法)求1到1亿间的质数或素数
  • (转)菜鸟学数据库(三)——存储过程
  • (轉貼) 蒼井そら挑戰筋肉擂台 (Misc)
  • .NET Core实战项目之CMS 第一章 入门篇-开篇及总体规划
  • .Net Remoting(分离服务程序实现) - Part.3
  • .NET/C# 阻止屏幕关闭,阻止系统进入睡眠状态
  • /etc/shadow字段详解