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

qt数据类型定义(包含签名)

先推荐一个处理markdown表格的网站,超级好用:markdown表格处理,我就是用这个表格处理的excel中的数据上传。

下表整理了数据类型的值范围、签名、qt如何定义等内容。

类型范围/子类型dbus签名qt支持的签名qt类型定义方式转换为variant
int8(c)-128~127yyquint8/uchar
uint80~255yyquint8/uchar
int16-32768~32767nnqint16/shortQVariant::fromValue(arg)
uint160~65535qqquint16/ushortQVariant::fromValue(arg)
int32-2147483648~2147483647iiqint32/int
uint320~4294967295uuquint32/uint
int64-9223372036854775808~9223372036854775807xxqint64/qlonglong
uint640~18446744073709551615ttquint64/qulonglong
float32(f)-3.4E38 -1~+3.4E38+1dddouble
float64-1.79E+308 ~ +1.79E+308dddouble
boolbbbool
stringssQString
void
arrayacayayQByteArray data;QVariantMap data;
QList<uint> auint;
auint.append(0);
data["arg"] = QVariant::fromValue(auint);

QVariant vrt;
vrt.setValue<QVariantMap>(data);
ayayayQByteArray
anananQList<short>
aqaqaqQList<ushort>
aiaiaiQList<int>
auauauQList<uint>
axaxaxQList<qlonglong>
atatatQList<qulonglong>
afadadQList<double>
adadadQList<double>
abababQList<bool>
asasasQStringList
variantvvQVariant
mapa{sy}a{sy}a{sy}QMap<QString, uchar>map转variant: QMap<QString, QVariant> data;
data.insert("key1", 1);
data.insert("key2", "2a");
data.insert("key3", 3.23);
data.insert("中文key", false);
// QVariant datav = QVariant::fromValue(data);

QMap<QString, QMap<QString, QVariant>> data1;
data1.insert("key", data);
QVariant vrt = QVariant::fromValue(data1);
a{sn}a{sn}a{sn}QMap<QString, short>
a{sq}a{sq}a{sq}QMap<QString, ushort>
a{si}a{si}a{si}QMap<QString, int>
a{su}a{su}a{su}QMap<QString, uint>
a{sx}a{sx}a{sx}QMap<QString, qlonglong>
a{st}a{st}a{st}QMap<QString, qulonglong>
a{ss}a{ss}a{ss}QMap<QString, QString>
a{sd}a{sd}a{sd}QMap<QString, double>
a{sb}a{sb}a{sb}QMap<QString, bool>
a{sa}a{sa}a{sa}QMap<QString, QStringList>
a{sv}a{sv}a{sv}QMap<QString, QVariant>
a{sa{sv}}a{sa{sv}}a{sa{sv}}QMap<QString, QMap<QString, QVariant>>
a{yv}、a{nv}...a{dv}a{yv}不支持/这种场景的构造可以使用d-feet或用gdbus
a{bv}、a{av}没有这种以bool或数组作为key值

数据说明:
1、qt不支持int8,只支持quint8或uchar,默认范围是0-255。如果qt定义此范围外的数据,会自动转换,比如-1会转成255,256会转成0。
2、qt不支持uint8的数组,只支持QByteArray,默认范围是-128-127。如果是此范围外的数据,qt会自动转换,比如255会转成-1, 250会转成-6。但是dbus支持的范围是0-255,所以-1或者-6到dbus后,又会被转为255或250。

备注:
1、QVariantMap定义的、不管是几层嵌套,其实签名都是a{sv}–[map[string]dbus.Variant] 。
2、QVariantMap相当于QMap<QString, QVariant>。

相关文章:

qt数据类型定义(包含签名)

先推荐一个处理markdown表格的网站&#xff0c;超级好用&#xff1a;markdown表格处理&#xff0c;我就是用这个表格处理的excel中的数据上传。 下表整理了数据类型的值范围、签名、qt如何定义等内容。 类型范围/子类型dbus签名qt支持的签名qt类型定义方式转换为variantint8(…...

docker逃逸总结

一、 检查是否在docker容器中 通过以下两个地方来判断 # 是否存在此文件 ls -al /.dockerenv# 在其中是否包含docker字符串 cat /proc/1/cgroup除了上面两种外还有其他方式判断&#xff0c;如检测mount、fdisk -l查看硬盘 、判断PID 1的进程名等也可用来辅助判断。 容器逃逸…...

MySql:表的操作

目录 创建表 查看创建表时的信息 查看表的结构描述 删除一张表 修改表 创建表 CREATE TABLE [IF NOT EXISTS] table_name (field1 datatype,field2 datatype,field3 datatype ) character set 字符集 collate 校验规则 engine 存储引擎; field 表示列名 datatype 表示…...

LVGL9 开关控件 (lv_switch) 使用指南

文章目录 前言主体1. **控件概述**2. **控件的样式和组成部分**3. **使用控件**改变开关状态 4. **事件处理**5. **按键支持**6. **示例代码** 总结 前言 lv_switch 是 LittlevGL 提供的一个开关控件&#xff0c;外观类似一个小型滑块&#xff0c;常用于实现开关功能&#xff…...

fastadmin 登录退出忽略中间提示页面

背景 研究了一圈CMS&#xff0c;从fastadmin、easyadmin、buildadmin、onethink等等几乎所有的框架CMS&#xff0c;当然也包括若依。 最后&#xff0c;根据当前项目综合考虑&#xff0c;还是选择的fastadmin&#xff1a; 预算经济实惠、维护成本低&#xff1b;工期端&#x…...

游戏引擎学习第36天

仓库 :https://gitee.com/mrxiao_com/2d_game 回顾之前的内容 在这个程序中&#xff0c;目标是通过手动编写代码来从头开始制作一个完整的游戏。整个过程不使用任何库或现成的游戏引擎&#xff0c;这样做的目的是为了能够全面了解游戏执行的每一个细节。开发过程中&#xff0…...

准确率99.9%的离线IP地址定位库 ip2region - python 示例

简介&#xff1a;ip2region是一个离线IP地址定位库和IP定位数据管理框架&#xff0c;10微秒级别的查询效率&#xff0c;提供了众多主流编程语言的 xdb 数据生成和查询客户端实现。号称准确率99.9%的开源离线IP地址定位库。 历史攻略&#xff1a; Python&#xff1a;暴力破解密…...

wordpress网站使用Linux宝塔面板和SQL命令行导入导出超过50M限制的数据库

wordpress网站使用Linux宝塔面板添加mysql数据库&#xff0c;使用phpMyAdmin工具导入sql数据库文件&#xff0c;会有最大限制50M。即使把sql数据库文件压缩为gzip或zip压缩包&#xff0c;压缩包也超过50M&#xff0c;该怎么办&#xff1f;怎样导入超过50M数据库呢&#xff1f; …...

开发基础(3):开发应用沉浸式效果 组件安全区方案

什么是沉浸式效果 典型应用全屏窗口UI元素包括状态栏、应用界面和底部导航条,其中状态栏和导航条,通常在沉浸式布局下称为避让区;避让区之外的区域称为安全区。 开发应用沉浸式效果主要指通过调整状态栏、应用界面和导航条的显示效果来减少状态栏导航条等系统界面的突兀感…...

Python中的数据可视化实战

一、前言 数据可视化是数据分析和报告中不可或缺的环节,它能够帮助我们直观地理解数据规律。Python提供了多个强大的可视化库,如Matplotlib、Seaborn、Plotly等。本文将通过实例演示这些工具的基本用法和高级技巧。 二、Matplotlib基础 1. Matplotlib的基本用法 import ma…...

计算机毕设-基于springboot的甜品店管理系统的设计与实现(附源码+lw+ppt+开题报告)

博主介绍&#xff1a;✌多个项目实战经验、多个大型网购商城开发经验、在某机构指导学员上千名、专注于本行业领域✌ 技术范围&#xff1a;Java实战项目、Python实战项目、微信小程序/安卓实战项目、爬虫大数据实战项目、Nodejs实战项目、PHP实战项目、.NET实战项目、Golang实战…...

SpringMVC纯注解快速开发

此文章适合具有一定的java基础的同学看哦&#xff0c;如果有看不懂的基本代码还是先补补java基础哦。 此教程带您不使用xml文件而是纯注解开发&#xff0c;易懂、快捷、迅速&#xff0c;从0开始搭建&#xff0c;很快就能构建起一个SpringMVC项目&#xff0c;能学到两种使用tom…...

【JAVA】Java高级:多数据源管理与Sharding:在Spring Boot应用中实现多数据源的管理

一个电商平台可能需要一个数据库来存储用户信息&#xff0c;另一个数据库来存储订单信息&#xff0c;甚至可能还有一个数据库用于数据分析。这种情况下&#xff0c;如何在Spring Boot应用中实现多数据源的管理就显得尤为重要。 1. 多数据源管理的重要性 在实际应用中&#xf…...

汽车网络安全 -- IDPS如何帮助OEM保证车辆全生命周期的信息安全

目录 1.强标的另一层解读 2.什么是IDPS 2.1 IDPS技术要点 2.2 车辆IDPS系统示例 3.车辆纵深防御架构 4.小结 1.强标的另一层解读 在最近发布的国家汽车安全强标《GB 44495》,在7.2节明确提出了12条关于通信安全的要求,分别涉及到车辆与车辆制造商云平台通信、车辆与车辆…...

黑马点评项目测试总结

黑马点评项目测试面经总结&#xff1a; 一&#xff0c;怎么使用使用Postman进行接口测试&#xff1f; 1&#xff0c;安装Postman 2. 创建请求&#xff1a; 打开Postman&#xff0c;点击"New"按钮创建一个新的请求。在弹出的窗口中&#xff0c;选择请求的类型&#x…...

【Selenium】基于 WebDriverWait 爬取带有懒加载的静态页面

0x00 前言 朋友做标书&#xff0c;需要用到每日温度&#xff0c;他的老板让在这个网页手动复制做一个长期表出来&#xff1a;http://www.tianqihoubao.com/lishi/nanjing/month/202412.html 想着帮个忙&#xff0c;做个爬虫脚本吧&#xff0c;忽然发现这个页面很有意思&#xf…...

【docker】docker compose 和 docker swarm

Docker Compose 和 Docker Swarm 都是 Docker 生态中的工具&#xff0c;但它们有不同的用途和目标。 下面是这两者的主要区别&#xff0c;帮助你理解它们在不同场景中的使用。 1. 用途和目标 Docker Compose: 目标&#xff1a;主要用于在单个机器上定义和运行多个容器应用&a…...

Javaweb 前端 ajax

作用&#xff1a;和后端交互 script 是 js axios(这里是函数的调用方式){封装的是对象} {}是对象 案例 。then的含义&#xff0c;请求后端之后&#xff0c;后端把数据放在回调 点了清空之后&#xff0c;还要查询全部 await等待请求执行完之后&#xff0c;接收这个结果 代码…...

【蓝桥杯每日一题】重新排序

重新排序 2024-12-8 蓝桥杯每日一题 重新排序 前缀和 差分 题目大意 给定一个数组 A 和一些查询 L i , R i Li_,R_i Li,​Ri​, 求数组中第 L i L_i Li​至第 R i R_i Ri​个元素之和。 小蓝觉得这个问题很无聊, 于是他想重新排列一下数组, 使得最终每个查 询结果的和尽可能…...

《深入浅出HTTPS》读书笔记(16):消息验证码算法分类

MAC算法有两种形式&#xff0c;分别是CBC-MAC算法和HMAC算法。 CBC-MAC算法从块密码算法的CBC分组模式演变而来&#xff0c;简单地说就是最后一个密文分组的值就是MAC值。 HMAC&#xff08;Hash-based Message Authentication Code&#xff09;算法使用Hash算法作为加密基元&am…...

uniapp 对接腾讯云IM群组成员管理(增删改查)

UniApp 实战&#xff1a;腾讯云IM群组成员管理&#xff08;增删改查&#xff09; 一、前言 在社交类App开发中&#xff0c;群组成员管理是核心功能之一。本文将基于UniApp框架&#xff0c;结合腾讯云IM SDK&#xff0c;详细讲解如何实现群组成员的增删改查全流程。 权限校验…...

【CSS position 属性】static、relative、fixed、absolute 、sticky详细介绍,多层嵌套定位示例

文章目录 ★ position 的五种类型及基本用法 ★ 一、position 属性概述 二、position 的五种类型详解(初学者版) 1. static(默认值) 2. relative(相对定位) 3. absolute(绝对定位) 4. fixed(固定定位) 5. sticky(粘性定位) 三、定位元素的层级关系(z-i…...

Vue2 第一节_Vue2上手_插值表达式{{}}_访问数据和修改数据_Vue开发者工具

文章目录 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染2. 插值表达式{{}}3. 访问数据和修改数据4. vue响应式5. Vue开发者工具--方便调试 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染 准备容器引包创建Vue实例 new Vue()指定配置项 ->渲染数据 准备一个容器,例如: …...

反射获取方法和属性

Java反射获取方法 在Java中&#xff0c;反射&#xff08;Reflection&#xff09;是一种强大的机制&#xff0c;允许程序在运行时访问和操作类的内部属性和方法。通过反射&#xff0c;可以动态地创建对象、调用方法、改变属性值&#xff0c;这在很多Java框架中如Spring和Hiberna…...

高防服务器能够抵御哪些网络攻击呢?

高防服务器作为一种有着高度防御能力的服务器&#xff0c;可以帮助网站应对分布式拒绝服务攻击&#xff0c;有效识别和清理一些恶意的网络流量&#xff0c;为用户提供安全且稳定的网络环境&#xff0c;那么&#xff0c;高防服务器一般都可以抵御哪些网络攻击呢&#xff1f;下面…...

学习STC51单片机32(芯片为STC89C52RCRC)OLED显示屏2

每日一言 今天的每一份坚持&#xff0c;都是在为未来积攒底气。 案例&#xff1a;OLED显示一个A 这边观察到一个点&#xff0c;怎么雪花了就是都是乱七八糟的占满了屏幕。。 解释 &#xff1a; 如果代码里信号切换太快&#xff08;比如 SDA 刚变&#xff0c;SCL 立刻变&#…...

技术栈RabbitMq的介绍和使用

目录 1. 什么是消息队列&#xff1f;2. 消息队列的优点3. RabbitMQ 消息队列概述4. RabbitMQ 安装5. Exchange 四种类型5.1 direct 精准匹配5.2 fanout 广播5.3 topic 正则匹配 6. RabbitMQ 队列模式6.1 简单队列模式6.2 工作队列模式6.3 发布/订阅模式6.4 路由模式6.5 主题模式…...

Mysql中select查询语句的执行过程

目录 1、介绍 1.1、组件介绍 1.2、Sql执行顺序 2、执行流程 2.1. 连接与认证 2.2. 查询缓存 2.3. 语法解析&#xff08;Parser&#xff09; 2.4、执行sql 1. 预处理&#xff08;Preprocessor&#xff09; 2. 查询优化器&#xff08;Optimizer&#xff09; 3. 执行器…...

华为OD机考-机房布局

import java.util.*;public class DemoTest5 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseSystem.out.println(solve(in.nextLine()));}}priv…...

08. C#入门系列【类的基本概念】:开启编程世界的奇妙冒险

C#入门系列【类的基本概念】&#xff1a;开启编程世界的奇妙冒险 嘿&#xff0c;各位编程小白探险家&#xff01;欢迎来到 C# 的奇幻大陆&#xff01;今天咱们要深入探索这片大陆上至关重要的 “建筑”—— 类&#xff01;别害怕&#xff0c;跟着我&#xff0c;保准让你轻松搞…...