Qt数据结构-QString二:QString的arg能不能像Python的format一样使用
常规QString拼接字符串我们是这样写的
QString s = QString("My name is %1, age %2").arg("zhangsan").arg("18");
qDebug() << s; // "My name is zhangsan,age 18"
Python的format是这样写的
s = "My name is {name}, age {age}".format(name="zhangsan", age=18)
print(s) # My name is zhangsan, age 18
在Qt中arg跟两三个参数还好,没啥问题,可是如果跟一二十个参数,咋整。顺序写错了,那就完蛋了。所以我在想是否可以像Python一样可以通过变量名称来赋值
然后就有了下面的这种写法,感觉还不错,大家就当玩玩。
QString s = "My name is {name}, age {age}";
s.replace("{name}", "zhangsan");
s.replace("{age}", "18");
qDebug() << s; // "My name is zhangsan,age 18"
别说,还挺好使。
Qt数据结构-QString二:QString的arg能不能像Python的format一样使用的更多相关文章
- Qt入门-字符串类QString
原地址:http://blog.csdn.net/xgbing/article/details/7770854 QString是Unicode字符的集合,它是Qt API中使用的字符串类. QStri ...
- Qt unsigned char *与QString之间的相互转换
//unsiged char *转QString unsigned char *str = "fdd" ; char *str1 = (char *)str; QString s ...
- Qt计算器开发(二):信号槽实现数学表达式合法性检查
表达式的合法性 由于我们的计算器不是单步计算的,所以我们能够一次性输入一个长表达式.然而假设用户输入的长表达式不合法的话,那么就会引发灾难.所以有必要对于用户的输入做一个限制. 一些限制举例: 比方, ...
- Qt 地址薄 (二) 添加地址
在上一篇 Qt 地址薄 (一) 界面设计 中,主要是实现了地址簿的界面,使用布局管理器进行元素的布局,并解释了"子类化" 和"所有权"的概念. 本篇将在上面的基 ...
- 【大话QT之十二】基于CTK Plugin Framework的插件版本号动态升级
应用需求: 某些场景下我们可能面临这种问题,在执行着的应用程序不能终止的情况下,升级某个功能(或添,或减.或改动).在不採用CTK Plugin Framework插件系统架构的情况下这将是非常困难的 ...
- Qt容器类之二:迭代器
一.介绍 遍历一个容器可以使用迭代器(iterators)来完成,迭代器提供了一个统一的方法来访问容器中的项目.Qt的容器类提供了两种类型的迭代器:Java风格迭代器和STL风格迭代器.如果只是想按顺 ...
- QT学习(二)
这一篇学习QT中最重要的也是最有特色的信号槽机制. (因为我学习过MFC,所以我觉得QT的信号槽机制和MFC中的消息响应机制是一一对应的.不过是MFC用的是宏来实现,而QT用的是消息和槽.相对来说QT ...
- 如何用Qt做SolidWorks二次开发
这个问题困扰了我2年了,之前找到的教程都是MFC的,ATL导入向导或是通过导入类型库的方式来调用控件,我一直都搞不明白. 最近学习了ActiveQT以及通过ActiveQT控制EXCEL.Word.P ...
- Redis指令与数据结构(二)
0.Redis目录结构 1)Redis介绍及部署在CentOS7上(一) 2)Redis指令与数据结构(二) 3)Redis客户端连接以及持久化数据(三) 4)Redis高可用之主从复制实践(四) 5 ...
- 我理解的数据结构(二)—— 栈(Stack)
我理解的数据结构(二)-- 栈(Stack) 一.栈基础 栈是一种线性结构 相比较数组,栈对应的操作是数组的子集 只能从一端添加元素,也只能从同一端取出元素,这一端称为栈顶 栈是一种后进先出的数据结构 ...
随机推荐
- 监控系统open-falcon安装部署
目录 官方文档 安装包下载地址 环境准备 安装redis 安装mysql 安装git 安装GO 安装后台 部署前端: 邮件报警 修改ALARM配置 修改报警接口 报警测试邮件展示 Q&A 官方 ...
- 【Azure Key Vault】是否有直接方法将Azure Key Vault中的机密名称/机密值到处成文件呢?
问题描述 是否有直接方法将Azure Key Vault中的机密名称/机密值导出,保存为一个文件呢? 问题解答 Azure Key Vault 没有直接提供Secret 导出文件(如xlsx格式)的方 ...
- 【Azure 事件中心】Event Hubs中存在非常多的错误数据,是否能提前删除这些数据呢?
问题描述 因为一些特殊原因,Event Hub 里面堆积了很多不需要的数据事件,正常要等事件中的过期时间到后才有Event Hub自动删除掉,但希望能够尽快马上删除,有没有什么手动的方法吗? 问题解答 ...
- 【Azure Developer】Java代码访问Key Vault Secret时候的认证问题,使用 DefaultAzureCredentialBuilder 或者 ClientSecretCredentialBuilder
问题描述 使用Java SDK获取Key Vault Secret机密信息时,需要获取授权.通常是使用AAD的注册应用(Client ID, Tenant ID, Client Secret)来获取 ...
- UG474
为了对工程的资源利用率进行优化,我们首先需要知道当前工程对资源的利用率情况.在Vivado下,我们可以查看工程的资源利用率情况,在下面这张图中,其罗列出了整个工程所使用的资源情况.首先,下面我们需要一 ...
- [Linux] 无显示器 无键盘 网线直连传输文件
有显示器可以操作 这种情况下要简单的多,基本思想是,网线直连之后让其中一方当作网关,分配好ip地址,比如说192.168.8.1,网关也是192.168.8.1即可,如果要填写子网掩码就写255.25 ...
- git reset --soft HEAD^^ 项目提交代码冲突 提交当前merge后,别提交远程,用命令回滚2次,到未提交的版本,再拉取同事代码,冲突解决
git reset --soft HEAD^^ 项目提交代码冲突 提交当前merge后,别提交远程,用命令回滚2次,到未提交的版本,再拉取同事代码,冲突解决 当多人写一个项目,最好还是关掉vscode ...
- day02-功能实现02
功能实现02 6.功能05-显示家居信息 6.1需求分析 进入后台系统,可以在页面进行所有家居信息的展示 6.2思路分析 完成从后端代码从mapper(dao层)-->Service层--> ...
- FFmpeg命令行之ffmpeg调整音视频播放速度
FFmpeg对音频.视频播放速度的调整的原理不一样.下面简单的说一下各自的原理及实现方式: 一.调整视频速率 视频的倍速主要是通过控制filter中的setpts来实现,setpts是视频滤波器通过改 ...
- LinuxDNS分析从入门到放弃(记一次有趣的dns问题排查记录,ping 源码分析,getaddrinfo源码分析)
PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 环境说明 ubuntu 18.04 前言 我们这里有一块 ...